さけのさかなのブログ

同人ゲーム開発やってます。Unity使ったりする。

【Unity】ETC1(Split alpha channel)形式テクスチャをUIに使う

やること

 Android環境において、アルファつきテクスチャ画像をETC1(Split alpha channel)形式でインポートし、UIで使う。その手順について。

手順

テクスチャインポート設定

  • SpritePacker有効時のみ有効なので、PackingTagを設定。
  • FormatをRGB Compressed ETC 4bitにする。
  • Compress using ETC1(split alpha channel)にチェック。

f:id:enuenupi:20170321144430p:plain

 ちなみに、ビルドするとこんな感じでログが出る。

f:id:enuenupi:20170321184246p:plain

シェーダ設定

 デフォルトのUIシェーダはアルファ分離ETC1に対応していない。

 そこで、ProjectSettings -> Graphic -> Always Included Shader listにUI/DefaultETC1を登録しておくことで、適切なシェーダへの切り替えを行ってくれるようになる。

f:id:enuenupi:20170321180320p:plain

確認

 じっきでおこなわないとひどいめにあう。

参考

docs.unity3d.com

docs.unity3d.com