Version: 2017.2
Distance Shadowmask
ベイクしたライティング

Subtractive モード

Subtractive モードはすべての混合ライトが共有するライティングモードです。混合ライティングを Subtractive に設定するには Lighting ウインドウを開きます ( Window > Lighting > Settings)。 Scene タブ をクリックし、 Mixed Lighting に移動して、 Lighting ModeSubtractive に設定します。Subtractive ライティングに関して詳しくは 混合ライティング のドキュメントを参照してください。他のモードに関しては ライティングモード を参照してください。

Subtractive モードは直接ライティングをライトマップにベイクするただ 1 つの混合ライティングモードで、Unity が他の混合ライティングモードで動的なシャドウと静的なシャドウを合成するために使用する情報を破棄します。ライトはすでにライトマップにベイクされているので、Unity がランタイムに直接ライティングの計算を行うことはできません。

Subtractive モードでは

  • 静的ゲームオブジェクトは混合ライトからスペキュラーまたは光沢のあるハイライトをまったく表示しません。また、主要なディレクショナルライトを除いて、動的なゲームオブジェクトからまったく影を受け取ることはできません (これについての詳細は以下を参照してください)。

  • 動的なゲームオブジェクトはリアルタイムのライトを受け、光沢のあるリフレクションをサポートします。 ただし、動的なゲームオブジェクトは ライトプローブ を使った静的ゲームオブジェクトの影だけしか受けられません。

Subtractive モードでは、動的ゲームオブジェクトから静的なゲームオブジェクトにリアルタイムの影を投げる光源は、主要ディレクショナルライト (通常は太陽) だけです。 静的なゲームオブジェクトから他の静的なゲームオブジェクトに投げる影は、主要ライトであってもライトマップにベイクされます。そのため、Unity はベイクした影とリアルタイムの影の正しい合成を保証できません。したがって、Subtractive モードには [Realtime Shadow Color] フィールドがあります。Unity は、シェーダーでこの色を使用して、リアルタイムの影とベイクしたシャドウを合成します。これを行うと、動的なゲームオブジェクトによって影を落とされた範囲でライトマップの効果が削減されます。Unity があらかじめ決めた正しい値というものがないので、任意のシーンに対して有効な値を選択するのは、ユーザー自身の美感に基づいた選択に基づきます。

Subtractive モードが役に立つ良い例は、外部レベルと少ない動的ゲームオブジェクトを持つトゥーンシェーディング (つまり、漫画スタイルの) ゲームを構築する場合です。

以下の表は、Subtractive モードを使用するとき、静的ゲームオブジェクトと動的ゲームオブジェクトがどのように影を投げる/受けるかを示しています。

動的なオブジェクトが影を受ける
動的ゲームオブジェクトが他の静的/動的なゲームオブジェクトから影を受ける
静的なオブジェクトが影を受ける
静的ゲームオブジェクトが他の静的/動的なゲームオブジェクトから影を受ける
Shadow Distance 範囲内 Shadow Distance を超える場合 Shadow Distance 範囲内 Shadow Distance を超える場合
動的なオブジェクトが影を投影
動的ゲームオブジェクトから影を投げる
シャドウマップ - 主要ライトのシャドウマップ -
静的なオブジェクトが影を投影
>静的ゲームオブジェクトから影を投げる
Light Probes Light Probes ライトマップ ライトマップ

Subtractive モードの長所と短所

Subtractive モードのパフォーマンス要件は、ローエンドのモバイルデバイス向けのビルドに適しています。 以下は、Subtractive モードを使用する際の最も重要な長所と短所です。

長所

  • 追加のパフォーマンス要件無しに、ライトマップの静的ゲームオブジェクト間に質の高い影を供給します。

  • シェーダーの 1 つのテクスチャ操作で、静的ゲームオブジェクトのすべてのライトと影を処理します。

  • 間接光を提供します。

短所

  • リアルタイムの直接光を供給しません。したがって、スペキュラーライティングを供給しません。

  • ディレクショナルライト (主要ライト) を除いて、静的ゲームオブジェクトに動的な影を供給しません。

  • ライトプローブを使用して、静的なゲームオブジェクトから動的ゲームオブジェクトへ低解像度の影しか作成できません。

  • 動的な影と静的な影の合成は不正確になります。

  • ライトマップのテクスチャセットに関して、(ライトマップ無しにくらべ) より高いメモリ要件を必要とします。


  • 2017–06–08 限られた 編集レビュー でパブリッシュされたページ

  • Light Modes、 5.6に追加

Distance Shadowmask
ベイクしたライティング