ユニツール

無知の知。

【Unity】SpriteAtlasの表示がおかしい

概要

共同開発しているプロジェクトで筆者のSpriteAtlasだけ表示が狂っていて、Atlas全体が表示されたり、何も表示されなかったりしたので原因と解決策をまとめました。

原因はLibraryフォルダ

Unityのメタデータを管理している、Libraryフォルダ内のキャッシュデータがズレてしまったのが原因でした。
何故ズレたのか心当たりは無いんですが、Unityを開かずにエクスプローラーから編集したとかだと思います。

解決策

プロジェクトフォルダ内の「Library」というフォルダを消せば解決します。
ただ、Libraryを消していいのは、EditorSettingsのVersionControl-ModeをVisibleMetaFilesで管理している場合だけです。 f:id:sheena-hikari-games:20181214224637p:plain 詳しくは下記のリンクから docs.unity3d.com

まとめ

分かってみれば単純なことだったんですが、Atlasのデータをちょっと変えると直ったかのような挙動をするのが曲者でした。
設定オプションのTightPackingのチェックを切り替えるとちゃんとパッキングされたり。
パッキング対象のTextureSizeを変えるとちゃんとパッキングされたり。
Gitを最新にするたびに毎回設定し直してたので、地味にストレスでした・・・。

今回の教訓、「プロジェクトが同じなのに挙動が違ったらLibraryを疑え」