ライトレイヤー
Light Layer (ライトレイヤー) 機能を使用すると、特定のライトが特定のゲームオブジェクトにのみ影響するように設定できます。
例えば、以下の図の場合、ライト A
はスフィア D
には影響を与えますが、スフィア C
には影響を与えません。ライト B
はスフィア C
には影響を与えますが、スフィア D
には影響を与えません。
このサンプルを実装する方法については、ライトレイヤーの使用方法 セクションを参照してください。
ライトレイヤーを有効にする方法
プロジェクトでライトレイヤーを有効にするには:
URP アセット の Lighting セクションで、縦の省略記号 (⋮) のアイコンをクリックし、Show Additional Properties を選択します。
URP アセット の Lighting セクションで、Light Layers を選択します。
URP アセット > Lighting > Light Layers
ライトレイヤーを有効にすると、各ライトで以下の追加プロパティが表示されます。
General > Light Layer
Shadows > Custom Shadow Layers
ライトレイヤーを有効にすると、ライトの Culling Mask プロパティ (Rendering > Culling Mask) が無効になります。
ライトレイヤーを有効にすると、Culling Mask が無効になります。
ライトレイヤーの名前を編集する方法
ライトレイヤーの名前を編集するには:
Project Settings > Graphics > URP Global Settings に移動します。
Light Layer Names (3D) セクションでライトレイヤー名を編集します。
Graphics > URP Global Settings > Light Layer Names (3D)
ライトレイヤーの使用方法
このセクションでは、以下のアプリケーションのサンプルを設定する方法について説明します。
このシーンには、2 つのポイントライト (図の
A
とB
) および 2 つのスフィアゲームオブジェクト (図のC
とD
) が含まれています。ライト
A
はスフィアD
には影響を与えますが、スフィアC
には影響を与えません。ライトB
はスフィアC
には影響を与えますが、スフィアD
には影響を与えません。
以下の図にその例を示します。
ライト A
はスフィア D
には影響を与えますが、スフィア C
には影響を与えません。ライト B
はスフィア C
には影響を与えますが、スフィア D
には影響を与えません。
このサンプルを実装するには:
プロジェクトで ライトレイヤーを有効にします。
2 つのポイントライト (
A
とB
という名前を付けます) および 2 つのスフィア (C
とD
という名前を付けます) を作成します。両方のスフィアがライトの発光範囲に入るようにオブジェクトを配置します。Project Settings > Graphics > URP Global Settings に移動します。Light Layer 1 の名前を
Red
に、Light Layer 2 の名前をGreen
に変更します。ライト
A
を選択し、色を緑に変更します。ライトB
を選択し、色を赤に変更します。この設定では、両方のライトが両方のスフィアに影響を与えます。ライトとスフィアで以下の設定を行います。
ライト
A
: Light > General > Light Layer プロパティで、すべてのオプションを選択解除し、Green
を選択します。ライト
B
: Light > General > Light Layer プロパティで、すべてのオプションを選択解除し、Red
を選択します。スフィア
C
: Mesh Renderer > Additional Settings > Rendering Layer Mask プロパティで、すべてのオプションを選択し、Green
を選択解除します。スフィア
D
: Mesh Renderer > Additional Settings > Rendering Layer Mask プロパティで、すべてのオプションを選択し、Red
を選択解除します。これで、ポイントライト
A
はスフィアD
には影響を与えますが、スフィアC
には影響を与えなくなります。ポイントライトB
はスフィアC
には影響を与えますが、スフィアD
には影響を与えなくなります。
カスタムシャドウレイヤーの使用方法
上の図では、ライト A
はスフィア C
には影響を与えず、スフィアはライト A
による影を投影しません。
Custom Shadow Layers プロパティを使用すると、スフィア C
がライト A
による影を投影するようにシーンを設定できます。
ライト
A
を選択します。Light > Shadows で、Custom Shadow Layers プロパティを選択します。Layer プロパティが表示されます。
Layer プロパティで、スフィア C が属するライトレイヤーを選択します。
ライト A
はスフィア C
に影響を与えませんが、スフィア C
はライト A
による影を投影するようになります。
以下の図は、Custom Shadow Layers プロパティをオフにした場合とオンにした場合のシーンを示したものです。