渋谷ほととぎす通信

Unity・ゲーム開発 技術で一生食べていく情報発信

UnityのuGUIを使う場合のデザインリスク

f:id:esakun:20210206045616j:plain

先日公開した記事にも書いたのですが、NGUIには出来てuGUIで出来ないことシリーズです。

esakun.hateblo.jp

今回はシリーズその2。

結論から書きます。

uGUIは半透明マスクが作成できない

f:id:esakun:20150811233416p:plain こちらの画像の場合、黒い部分が抜けて、白い部分が残り、グレーの部分が半透明になります。

uGUIの場合Maskコンポーネントを親階層にアタッチすることで子階層にマスクがかかります。
f:id:esakun:20150811233905p:plain
ご覧の通り設定項目シンプルで迷うことなく使えるのですが、半透明マスクは使えません

Maskコンポーネントを使用せずにShaderでなんとかするという方法もありますが、こちらは試していないので分かりません。後日挑戦してみます。

NGUIはブラーマスクできる

UIPanelの子階層にあるものに適用されます。
もちろん、ぼかし具合もバッチリ変更できます。

まとめ

ブラーマスクはUIデザインしている際によく出てくるあしらい方です。

『このプロジェクトでは絶対ブラーマスクを は使いません。』

と、決めて進めることはできますが、デザイン制作していく中でどうしてもパズルのピースが合わなくなり、ブラーマスクが必要になることもあります。

だれか、uGUIでブラーマスクを実現する方法があれば、教えていただきたいです...
www.shibuya24.info uGUIブラーマスク実装しました。
※使う状況は限定的

画像一枚に対しての個別のマスクをかけるというのは、なんとなくできそうなのですが、レンダーテクスチャを使わずにマスクの子階層全てに対して半透明マスクをかけるロジックが全く思いつきません。。。