非RealtimeLight環境での光沢表現Tips

非RealtimeLight環境での光沢表現Tips


RealtimeLightがない環境の場合、ノーマルマップの影響が出ず、金属表現などに不向きです。
しかしVket3では軽量化のため、RealtimeLightよりもBakedLightを推奨しています。
このドキュメントはBakedLight環境下でも金属光沢を綺麗に見せるための解説です。


DirectionalMode

Lighting設定のDirectionalModeがDirectionalの場合、RealtimeLightがなくてもノーマルマップの影響がわずかに出ます。…が、これだけだともの足りません。
(Vket3はDirectional想定です → ※負荷対策のためNon-Directionalに変更になりました

fig
↑Non-Directinal

fig
↑Directional

そこで、環境を反射するリフレクションプローブを設置します。
(Vketのワールドにはエリアごとに配置されていますが、自分でカスタムリフレクションを配置することもできます)

リフレクションプローブのOFF/ON

fig
↑OFF

fig
↑ON

反射はするようになりましたが、床のSpecularが無いため、金属部分のノーマルマップへの影響はあまり見られないですね。

Specularを追加します。
fig

この表現で使いやすいオススメのシェーダーとしては、Standard(Specular Setup)です。ここのSmoothnessの値を上げることで、ReflectionProbeの環境の情報が、ノーマルマップの光沢として反映されます。
fig

「つまりどういうこと?」

  • Standard (Specular Setup)にして、Normal Mapを適用、SpecularのColorとSmoothnessを調整すればBaked Onlyの環境であっても光沢表現が出せるよ!
  • ただしReflectionProbeが設定されていないと効果がないので、テストするときはReflectionProbeを入れて確認しよう。

それでも物足りない場合

リフレクションを反射しにくい材質や、ノーマルマップを強く強調したい場合などはレイヤーをPickupに入れてワールドのRealtime Directional Lightを使用して下さい。(推奨)

暗いワールドなどで、RealtimeLightが当たると違和感がある・周囲と馴染まない、などの場合もあると思います。
より詳細なRealtimeLightが必要な場合は、個人で設置することもできます。(要相談)


最終更新:2019年07月19日 01:25