Version: 2019.4
Lightmap Parameters アセット
ライトマップとLOD

ディレクショナルモード

ライトマップで使用できる Directional Modes (ディレクショナルモード) には、Directional (指向性) と Non-Directional (非指向性) があります。ライトマップの Directional Mode を設定するには、Lighting ウィンドウを開き (Window > Lighting > Settings)、Scene をクリックし、Lightmapping Settings に移動します。LightmapperEnlighten に設定されていることを確認し、Directional Mode ドロップダウンを使用します。どちらのオプションもリアルタイムとベイク、両方のライトマップで利用できます。

Directional (指向性) ライトマップは、ライティング環境に関して、Non-Directional (非指向性) のライトマップよりも詳細な情報を格納します。シェーダーでは、入射光に関する詳しいデータを使用し、画面に表示されるマテリアルの見え方を決定する出射光の計算結果を向上させます。これによって、テクスチャメモリの使用量とシェーディング時間の増加し負荷が発生します。

Non-Directional ライトマップは平らな拡散を生成します。このモードはただ 1 つのライトマップを使用しており、光が純粋に拡散すると仮定して、どれだけ多くの光を表面から放出するかという情報を保存しています。オブジェクトはこの方法で照らされると、平らに (法線マップは使用されません) 拡散しているように(マテリアルがスペキュラーであっても) 見えます。しかし、それ以外は正しくライティングされます。これらの樽は、ベイクしたライトマップを使用しています。詳細な定義は、リフレクションプローブとオクルージョンマップのみから来ています。

Directional ライトマップは法線マップによる拡散を生成します。このモードは、第2 のライトマップを持ち、それは入ってくる主な光の方向と、第1 のライトマップのうちどれだけの光がその主要な方向に沿って入ってくるかの比例係数を格納します。つまり、残りの光は半球全体から均等に来ると仮定します。その情報を基にマテリアルは法線マップにされますが、それでも純粋に拡散するように表示されます。

パフォーマンス

Directional モードでは、Non-directional モードの 2 倍のテクスチャメモリを消費し、少しだけ高いシェーディング負荷がかかります。

  • Non-directional 1つのテクスチャ、1つのテクスチャサンプル、2–3 の付加的なシェーダー命令。

  • Directional 2つのテクスチャ、2つのテクスチャサンプル、さらにいくつかの付加的なシェーダー命令。

リアルタイムライトマップは同じアプローチをしています。そして、シェーディングの品質とコストのバランスに関しても同様です。

実際に間接光 (ベイクされたライトの間接的な部分) に使用される BRDF は、わずかにコストを削減できます。UNITY_BRDF_PBS_LIGHTMAP_INDIRECTUnityPBSLighting.cginc で定義されています。

ライトマップのスペキュラーライティング

ライトマップの静的アセットでスペキュラーライトを作成するには、ベイクしたライトの Light Modes を Shadowmask または Distance Shadowmask を使用します。これにより、ライトはリアルタイムで高品質になります。詳しくは、ライトモード を参照してください。


  • 2017–06–08 Page published

  • 5.6 で Direct Specular を削除

  • Light Modes、 5.6に追加

Lightmap Parameters アセット
ライトマップとLOD