ライトマッピングクイックスタート
ライトマップ - Directional Mode

ライトマップパラメーター

Lightmap Parameters アセットは、Unity の グローバルイルミネーション (GI) 機能を制御するパラメーターの値を格納するために使われます。これらを使うと、さまざまな状況で使用するために、異なる組みあわせのライティングの値を定義し保存することができます。作成すると Project フォルダーに保存され、 Project ウインドウ で操作できます。

Project ウィンドウに表示された New LightmapParameters という名のライトマップパラメーター
Project ウィンドウに表示された New LightmapParameters という名のライトマップパラメーター

Lightmap Parameters アセットを利用すると、ゲームオブジェクト、プラットフォーム、シーン (例えば、屋内、または、屋外シーンなど) の種類に応じて最適化されたプリセットを素早く作成できます。

Project ウィンドウで Lightmap Parameters アセットをクリックすると、Inspector ウィンドウにそのアセットで定義された値が表示されます。パラメーターと説明は下の表のとおりです。

プロパティー 説明
Precomputed Realtime GI
Resolution この値は、Lighting ウィンドウ ( Window > Lighting > Scene) の Scene タブの Realtime Resolution の値をスケールし、ライトマップの最終的な解像度を「距離のユニット毎のテクセル」で示します。
Cluster Resolution 最終的なライトマップの解像度に対するクラスターの解像度 (すなわち、光バウンスが内部で計算されている解像度) の比。
Irradiance Budget この値は、ライトマップの各テクセルを照らすために使用される入射光のデータの精度を決定します。各テクセルのライティングは、テクセルの位置からシーンの「ビュー」をサンプリングすることによって得られます。放射照度の量が低い場合は、よりぼやけたサンプルになります。値を高くすると、サンプルはよりはっきりします。放射照度の量を上げると、ライティングは改善されますが、ランタイムのメモリ使用量が増加し、CPU の使用が増加する場合があります。
Irradiance Quality スライダーを使って、指定した出力ライトマップのテクセルに影響するクラスターを計算するために使用するレイの数を定義します。値を大きくすると、ライトマップの見た目が向上しますが、Unity の事前の計算時間が増加します。値は、ランタイムのパフォーマンスには影響しません。
Backface Tolerance メッシュの構造は、時にはいくつかのテクセルが裏面ジオメトリを含む “ビュー” を持つ原因となります。裏面からの入射光はあらゆるシーンで無意味です。このため、このプロパティーを使用すると、テクセルが有効と見なされるために正面のジオメトリから来なければならない光の割合のしきい値を選択することができます。無効なテクセルは、その照明を近隣の値から近似します。Backface Tolerance を低くすると、裏面からの入射光が原因となるライティングの問題を解決できます。
Modelling Tolerance この値は、ライトが通り抜けるメッシュジオメトリのすき間の最小サイズを制御します。環境内でライトがより小さなすき間を通り抜けるようにするには、この値を低くします。
Edge Stitching このプロパティーを有効にすると、視覚的アーティファクトを回避するために、ライトマップの UVチャートをシームレスに結合します。
Is Transparent 有効にすると、グローバルイルミネーションを計算している間、このオブジェクトは透明になります。裏面はこの計算に何も影響を与えず、光はオブジェクトの表面を通過します。この設定は目に見えない発光性の面を作成する際に役立ちます。
System Tag ライトマップテクスチャが同じライトマップアトラスに混合されるオブジェクトのグループはシステムと呼ばれています。すべてのオブジェクトが 1 つのアトラスに適合しない場合、Unity は追加するシステムとそれに付随するアトラスを自動的に定義します。ただし、別のシステムを自身で定義する方が便利な場合があります (例えば、別々のルームのオブジェクトを、各ルームにつき 1 つのシステムにグループ分けする、など)。 System Tag 番号を変更すると、強制的に新しいシステムとライトマップを作成します。タグの値の数的な順序の正確さは重要ではありません。
Baked GI
Blur Radius ポストプロセスで直接ライティングに適用されるぼかしフィルタの半径(テクセル)です。半径は、基本的に、隣接するテクセルが平均化される距離です。半径を大きくすると、よりぼやけた効果を与えます。ぼかしのレベルを高くすると、視覚的なアーティファクトが低減されるだけでなく、影のエッジもソフトになります。
Antialiasing Samples 適用されるアンチエイリアス (テクセルのブロック状のアーティファクトの軽減) の程度。値を高くすると、品質が上がり、ベイク時間が長くなります。
Direct Light Quality レイの数は、直接ライティングを評価するために使用されます。レイの数が多いほど、より正確なソフトシャドウを生成しやすくなりますが、ベイク時間が長くなります。
Baked Tag System Tag プロパティと同様に、この数値で指定したオブジェクトの一群を、別々のベイクしたライトマップに集める事ができます。System Tag と同じく数値自体には特に意味が有りません。異なる Baked Tag 値を持つオブジェクトは、決して同じアトラスに入ることはありません。ただし、同じタグを持つオブジェクトが同じアトラスに含まれるという保証はありません。なぜなら、それらのオブジェクトは 1 つのライトマップに適合するとは限らないからです (下の図 A を参照)。マルチシーンのベイクした API を使っている場合には、グループは自動的に作成されるため、この値を設定する必要はありません (Lock Atlas オプションの挙動のいくつかを模倣するには、 Baked Tag を使います)。
Pushoff モデリングユニットのレイをトレースし始める前に、表面のジオメトリから押し出される距離。これは、すべてのベイクされたライトマップに適用されるので、直接光、間接光およびアンビエントオクルージョンに影響します。Pushoff は不要なアンビエントオクルージョンやシャドウイングを除くのに便利です。この設定を使うと、オブジェクトの表面がそれ自体に影を落とし、明白な理由もなく小さなはん点のついた影が表面に現れる問題を解決できます。また、浮動小数点の精度が詳細なレイトレースを行えるほど高くない場合に、巨大なオブジェクトで発生する不要なアーティファクトを除去するのに利用できます。
Baked AO
Quality アンビエントオクルージョンを評価するとき、キャストされるレイの数。この数字が大きいほど アンビエントオクルージョンの品質が向上しますが、ベイク時間も長くなります。
Antialiasing Samples アンビエントオクルージョンのアンチエイリアスを行うときに取得するサンプル数。サンプル数が多いほどアンビエントオクルージョンの品質が上がりますが、ベイク時間も長くかかります。
Image A: Baked Tag
Image A: Baked Tag

図 A は同じシーンの 2 通りのビューを表示しています。

  • - すべてのオブジェクトの Baked Tag が同じなので、すべてが 1 つのアトラスに含まれます。

  • - 違う__Baked Tag__ を指定することで、1 つのオブジェクトは 2 つめのライトマップに含まれるよう強制されます。

ライトマップパラメーターアセットの割り当て

Scenes

Lightmap Parameters アセットをシーン全体に割り当てるには、Window > Lighting を選び ライティングウィンドウ を開きます。ここで、 Scene タブをクリックし General GI 設定を表示します。

Default Parameters ドロップダウンを使ってデフォルトの Lightmap Parameters アセットを割り当てます。このドロップダウンリストには使用可能な Lightmap Parameters アセットすべてが含まれています。

ゲームオブジェクト

Lightmap Parameters アセットを 1 つのゲームオブジェクトに割り当てるには、ゲームオブジェクトに Mesh Renderer かTerrain コンポーネントがアタッチされていることを確認します。ゲームオブジェクトを選び、それから Lighting ウィンドウ ( Window > Lighting) を開き Object タブを表示します。

Lightmap Parameters アセットを Mesh Renderer に割り当てるには、 Lightmap Static チェックボックスをチェックし、 Advanced Parameters からオプションを選びます。すべてのシーンに割り当てたのと同じ Lightmap Parameters アセットを使用したい場合は、Default scene parameter を選びます。

Lightmap Parameters アセットを Terrain に割り当てるには、 Lightmap Static チェックボックスをチェックし、 Advanced Parameters からオプションを選びます。すべてのシーンに割り当てたのと同じ Lightmap Parameters アセットを使用したい場合は、Default scene parameter を選びます。

Lightmap Parameter アセットの作成と調整

新しい Lightmap Parameters アセットを作成するには、使用可能な Lightmap Parameters アセットのリストから Create New… をクリックします。このようにすると、Lighting ウインドウは変化して、カスタムの Lightmap Parameters アセットを作成のためのプロパティーのリストを表示します。このウインドウには、Project ウインドウで Lightmap Parameters アセットを選択したときに、インスペクターウインドウに表示されるのと同じプロパティーが表示されます。

ライトマッピングクイックスタート
ライトマップ - Directional Mode