2020/11/09
というわけで、今回はUnityの標準マテリアルに関するお話です。
最近の (という程でもありませんが) Unityではマテリアルのシェーダが「standard」メインになっています。
上記シェーダには「Rendering Mode」という概念がありますが、自分の中で曖昧な部分が多かったので、公式マニュアルを見て覚えておこうと思います。
公式マニュアルは↓のURLです。
https://docs.unity3d.com/ja/current/Manual/StandardShaderMaterialParameters.html
レンダリングモードの一覧
Opaque
デフォルトのモードで、透明な部分のないオブジェクトに設定します。
特に透明要素を扱わないオブジェクトならこれで良いでしょう。
Cutout
「不透明」か「透明」かの2種類のみを扱うモードです。所謂「半透明」が存在しないとのこと。
公式マニュアルには「葉っぱや穴だらけでボロボロの服などの素材を形作るのに便利」と書いてあります。
どの程度の透明度までカットするかは、プロパティの「Alpha Cutoff」で設定できます。
初期値は0.5ですが、テクスチャに応じて調整すると良さそうです。
Transparent
アルファ値に基づいた透明度になりますが、反射や照明の影響を受けます。
つまりアルファを0にしても、見た目上は完全な透明にはなりません。
下は服だけTransparentを指定してみた例です。
公式マニュアルには「プラスチックやガラスなどの現実的な透明素材に適する」旨が書いてあり、故にキャラクターよりは建物や障害物などに適すると言えます。
ファンタジーでよくある「刃身が透き通った剣」なんかもこちらですね。
Fade
「Transparentの反射や照明を受けない版」です。
そのため、こちらはアルファを0にすると完全な透明になります。
公式マニュアルではホログラムに対して適用しているようです。
その他ではアクションゲームでよくある「被ダメージ後の点滅」にはこちらが適すると思われます。