Planar Reflection Probe
Planar Reflection Probe (平面リフレクションプローブ) コンポーネントは、HD レンダーパイプライン (High Definition Render Pipeline、HDRP) が反応性があり正確な反射マテリアルの作成のために供給する、リフレクションプローブ の一種です。
プロパティー
Planar Reflection Probes は ビルトインレンダーパイプライン Reflection Probe および HDRP キューブマップ Reflection Probe と多くのプロパティーを共有します。
Planar Reflection Probes は HDRP Asset で Color Buffer Format に選択されたテクスチャフォーマットと同じものを使います。
General Properties
プロパティー | 説明 |
---|---|
Realtime Mode | Planar Reflection Probe はリアルタイムで更新します。このプロパティーを使って HDRP にどのくらい頻繁に Probe を更新するかを指示します。 • Every Frame: Probe のキャプチャデータをフレームごとに更新します。 • On Enable: Probe のキャプチャデータを Unity がコンポーネントの OnEnable() 関数を呼び出すたびに更新します。これは Inspector でコンポーネントを有効にするか、またはコンポーネントが帰属するゲームオブジェクトを有効にするたびに起こります。• On Demand: Probe のキャプチャデータを要求したときに更新します。これは Probe の HDAdditionalReflectionData にアクセスし、RequestRenderNextUpdate() 関数を呼び出して実行します。 |
Projection Settings
以下のプロパティーは、Planar Reflection Probe に対する投影設定を制御します。
プロパティー | 説明 |
---|---|
Proxy Volume | この Probe は Probe のキャプチャポイント (Mirror Position) とこの Probe がキャプチャする RenderTexture を使う反射マテリアルの位置の間に生じる、ディスプレイスメント問題を修正するために使う リフレクションプロキシ Volume です。ノート: 割り当てる Proxy Volume は、Influence Volume と同じ Shape でなければなりません。 |
Use Influence Volume As Proxy Volume | チェックボックスを有効にすると、Influence Volume の境界を Proxy Volume として使います。 このプロパティーは Reflection Proxy Volume を Proxy Volume プロパティーに設定していないときのみ表示されます。 |
Influence Volume
Influence Volume (インフルエンスボリューム) は反射マテリアルが Probe がキャプチャして面の反射動作に影響を与える結果を使う、Probe 周辺エリアを定義します。オーバーライド値が提供されていない限り、Planar Reflection Probe もまた、Influence Volume の境界を使って Field Of View を計算します。
平面プローブ方向と揃っていない反射オブジェクトに関しては、反射した光線が反射したカメラの有効視野から出ていくと、リフレクションがスムーズにフェードアウトします。
プロパティー | 説明 |
---|---|
Shape | Influence Volume の形状を定義します。可能な値は Box および Sphere です。下のプロパティーが利用できるかは、選択された形状によります。 |
Box Size | Influence Volume を表すボックスの各軸のスケールを定義します。Box Shape とのみ利用可能です。 |
Radius | Influence Volume を表すスフィアの半径を定義します。 Sphere Shape とのみ利用可能です。 |
Per Axis Control | チェックボックスを有効にすると、軸ごとに Blend Distance を制御します。Box Shape とのみ利用可能です。 |
Blend Distance | Planar Reflection Probe がその他の Reflection Probes と混ざる、Box Size または Radius からの内向きの距離です。Normal モードにおけるこのプロパティーは、Reflection Probe が全方向のその他の Reflection Probes と混ざる、単一値になります。このモードは Box または Sphere Influence Volumes に利用できます。Box 形状に関しては、Per Axis Control が有効のときに、このプロパティーはボックスのそれぞれの面に 1 つずつ、6 つの値を使います。6 つの各入力フィールドを使って、各方向におけるブレンド距離を定義します。例えば、Y はボックスの上面にブレンド距離を定義し、-Y は下面にブレンド距離を定義します。このモードは Box Influence Volumes のみに利用できます。この機能は ディファ―ド Reflection Probes のみに利用できます。 |
Capture Settings
以下のプロパティーは、Planar Reflection Probe が周囲の方向性ビューをキャプチャするために使う方法を制御します。
プロパティー | 説明 |
---|---|
Field Of View Mode | 有効視野を演算する際に使うモードを定義します。 |
Clear Mode | Probe がキャプチャする RenderTexture の空白の背景エリアをどのように埋めるかを定義します。 • Sky 現在の Volume 設定に定義されるスカイを使って、空白の背景エリアを埋めます。 • Color Background Color 設定をつかって、空白の背景エリアを埋めます。 • None RenderTexture の空白エリアを埋める代わりに、反射したゲームオブジェクトを表さない各ピクセルの前の値を再利用します。 |
Background Color | Clear Mode を Background に設定した場合に、RenderTexture の空白の背景エリアを埋める色です。 |
Clear Depth | Planar Reflection Probe が Depth Buffer を消去するかを選択します。 |
Volume Layer Mask | どの Volume が Planar Reflection Probe のキャプチャに影響するかを定義する LayerMaskk です。 |
Volume Anchor Override | Volume システムが Planar Reflection Probe の位置に対応するために使う Transform を設定します。例えば Planar Reflection Probe にポストプロセスエフェクトとビューカメラを一致させたければ、このプロパティーを Camera’s Transform を表示するに設定します。Volume システムはその後カメラの位置を使い、どの Volume が Planar Reflection Probe に影響するかをプロセスします。 |
Use Occlusion Culling | Planar Reflection Probe に オクルージョンカリング を有効化します。 |
Culling Mask | どのレイヤーをリフレクションに含めるかを定義する LayerMask です。この LayerMask に含まれるレイヤー上のゲームオブジェクトは、リフレクションに表示されます。 |
Clipping Planes - Near | Probe がリフレクションをキャプチャする、Planar Reflection Probe と比べて最も近いポイントです。 |
Clipping Planes - Far | Probe がリフレクションをキャプチャする、Planar Reflection Probe と比べて最も遠いポイントです。 |
Probe Layer Mask | 環境ライト (その他の Planar Reflection Probes と Reflection Probes からの光) のカリングマスクとして機能します。この Planar Reflection Probe は Layer マスクに含まれないレイヤーにあるすべての Planar Reflection Probe を無視するため、このプロパティーはレンダリング中に特定の Reflection Probes を無視するために使います。 |
Custom Frame Settings | Probe にカスタム フレーム設定 を定義できます。このプロパティーを無効にすると、Unity プロジェクトの HDRP Asset で Default Frame Settings を使います。 |
Resolution | Planar Reflection Probe の解像度を設定します。ドロップダウンから解像度の起源とする品質モードを選択します。Custom を選択する場合は、入力フィールドでピクセル単位の解像度を設定してください。解像度が高いと、GPU のパフォーマンスとメモリー使用量を犠牲にして、平面リフレクションの忠実性が増しますので、パフォーマンスに問題がある場合は値を下げてみてください。 |
Rough Reflections | チェックボックスを無効にすると、HDRP が Planar Reflection Probe をミラーとして使うように指示します。この場合、受信面は完全に滑らかでないと、正確なリフレクションの結果が得られません。完璧なリフレクションを得るためには、このオプションを無効にすると、HDRP が粗い屈折を処理する必要がなくなるためエフェクトのリソース負荷が軽減され、役立ちます。 |
Mirror Position | Transform Position からのミラーの位置をオフセットします。 このプロパティーは、このセクションに 追加オプション を有効にしたときのみ表示されます。 |
Range Compression Factor | HDRP がプローブのレンダリングの結果を乗算する因数です。これは本来であれば飽和するであろう、リフレクション内の非常に明るいまたは暗いオブジェクトを扱うのに役立ちます。 このプロパティーは、このセクションに 追加オプション を有効にしたときのみ表示されます。 |
Render Settings
以下のプロパティーは、Planar Reflection Probe の動作を微調整する追加の動作オプションを制御します。
プロパティー | 説明 |
---|---|
Light Layer | Reflection Probe がどの Light Layers に影響を与えるかを選択できるマスクです。Reflection Probe は一致する Rendering Layer Mask を持つ、Mesh Renderers または Terrain (地形) のみに影響します。 プロジェクトの HDRP Asset > Render Pipeline Supported Features へ移動し、Light Layers を有効にしてこのプロパティーを使います。 |
Multiplier | HDRP が Planar Reflection Probe にキャプチャされた RenderTexture に適用する乗数です。乗数値が高いほど、照会された RenderTexture はより明るくなり、乗数値が低いほど、照会された RenderTexture はより暗くなります。 |
Weight | Reflection Probe がマテリアルの反射エフェクトに付与する全体的ウェイトです。Reflection Probe が一緒に混ざるときに、各 Probe のウェイトがブレンドエリアの反射マテリアルに対する付与を決定します。 |
Fade Distance | リフレクションが完全に消えてしまう前に、滑らかにフェードアウトし始める、カメラからのメートル単位の距離です。 |
Gizmos
シーンビューギズモを使い、特定のプロパティーをカスタマイズすることができます。
Gizmo | プロパティー | 説明 |
---|---|---|
Influence Volume boundary | Reflection Probe が反射マテリアルに影響を与えるエリアを定義する、 Influence Volume の境界を移動させることができる、シーンビューハンドルを提供します。選択する Shape に応じ、Box Size または Radius 値を編集します。 | |
Blend Distance boundary | Planar Reflection Probe がその他の other Reflection Probes と混ざる、Box Size または Radius からの内向き距離を変更できる、シーンビューハンドルを提供します。Box 形状に関しては、Per Axis Control が有効の場合に、ボックスの各サイズに別々のハンドルが与えられます。 | |
Blend Normal Distance boundary | Capture Position と逆向きの法線を持つピクセルが Probe からの影響を受けない境界のサイズ変更ができる、シーンビューハンドルを提供します。 | |
Mirror Position | Transform の Position ではなく、 Mirror Position プロパティーを修正できるよう、Move Tool の動作を変更します。 | |
Mirror Rotation | Transform の Rotation ではなく、 Mirror Rotation プロパティーを修正できるよう、Rotate Tool の動作を変更します。 | |
Chrome Gizmo | シーン内のプローブのテクスチャをプレビューする、クロムクアッドを表示します。 |
ベストプラクティス
平面リフレクションプローブをミラーとして使う (つまり、Influenece Volume が、スムースネスとメタリックプロパティーが 1 に設定されているマテリアルをもつゲームオブジェクトと重なる) 場合の便利な方法は、Rough Refraction プロパティーを無効にしてリソース負荷を軽減させることです。 受ける面が完璧なミラーではなく Rough Reflection オプションが無効になっている場合、面は引き続き滑らかにレンダリングされますが、物理的に正しい結果は得られません。