Set Position (Depth)
メニューパス : Position > Set Position (Depth)
Set Position (Depth) ブロックは、Camera とその深度バッファに基づいて位置を計算し、その結果を position 属性 に格納します。
ブロックはまず、異なるモード (Random、Sequential、または Custom) で提供された値に基づいて、スクリーンスペースの位置を決定し、深度バッファとカメラのプロパティを使って、ワールドスペースの位置に変換します。
Scene 内の最初の メイン Camera か、または独自の Camera を使うことができます。
独自の Camera を使う場合は、ブラックボード で新しい Camera プロパティを作成、展開してから、 HDRP Camera Property Binder を使います。
オプションとして、計算されたスクリーンスペースの位置を使って、前回のカラーバッファでピクセルの色をサンプリングし、その結果をカラー属性に転送することができます。前回のカラーバッファとは、レンダリング中に利用可能な、ポストプロセスパス以前のものを指します。これは、カメラの フレーム設定 に応じて、屈折前または歪みのどちらかになり得ます。
カリングオプションを使うと、選択したモードによって alive 属性を true または false に設定できます。これを使って、ファー面にあるパーティクルや、特定の深度範囲外にあるパーティクルを消滅させることができます。
重要: ブロックが深度を計算するためには、指定されたカメラが有効になっており、ゲームビューが表示されている必要があります。
ブロックの互換性
このブロックは、以下のコンテキストと互換性があります。
ブロックの設定
設定 | Type | 説明 |
---|---|---|
Camera | Enum | 深度衝突を計算するためにどのカメラを使うかを決定するメソッドです。オプションは以下の通りです。 • Main: シーン内のメインカメラを使います。シーン何のカメラに、MainCamera タグが付いている必要があります。 • Custom: 特定のカメラを指定できます。 |
Mode | Enum | サンプルポイントをスクリーン上に分布するために、ブロックが使うメソッドです。オプションは以下の通りです。 • Random: スクリーン上でランダムな位置を計算し、Camera のプロパティに基づいて、ワールドスペースの位置を決定します。 • Sequential: 画面上のシーケンシャルな位置を計算し (行、列の順)、Camera のプロパティに基づいて、ワールドスペースの位置を決定します。 • Custom: 特定のスクリーンスペース座標の、ワールドスペースの位置を決定します。 |
Cull Mode | Enum | ブロックが位置の除去に使うメソッドです。オプションは以下の通りです。 • None: 位置の除去を行いません。 • Far Plane: カメラのファー面上の位置を除去します。 • Range: 特定した範囲外にある位置を除去します。 |
Inherit Scene Color | Bool | (Inspector) 計算された位置で、カラー属性が Scene カラーを継承するかを特定します。 |
Composition Position | Enum | (インスペクター) ブロックが位置属性をどのように構成するかを特定します。オプションは以下の通りです。 • Set: 位置属性を新しい値で上書きします。 • Add: 新しい値を位置属性値に追加します。 • Multiply: 位置属性値を新しい値で乗算します。 • Blend: 位置属性値と新しい値を補間します。ブレンド要素は 0 と 1 の間に指定できます。 |
Composition Color | Enum | (Inspector) ブロックがカラー属性をどのように構成するかを特定します。オプションは以下の通りです。 • Set: カラー属性を新しい値で上書きします。 • Add: 新しい値をカラー属性値に追加します。 • Multiply: カラー属性値を新しい値で乗算します。 • Blend: カラー属性値と新しい値を補間します。ブレンド要素は 0 と 1 の間に指定できます。 |
ブロックのプロパティ
入力 | Type | 説明 |
---|---|---|
Camera | Camera | 位置の計算に使うカメラです。ブロックはこのカメラの深度バッファを使って、パーティクルの位置を計算します。 このプロパティは、Camera を Custom に設定したときのみ表示されます。 |
Z Multiplier | float | 深度よりも近く、または遠く見えるよう、パーティクルに適用する乗数です。 |
UV Spawn | Vector2 | 深度をサンプリングし位置を計算するための、正規化されたスクリーンスペースの位置 (範囲 0..1) です。 Tこのプロパティは、Mode を Custom に設定したときのみ表示されます。 |
Depth Range | Vector2 | パーティクルが発生する深度範囲を特定します。この深度範囲外に位置するパーティクルの alive 属性は、false に設定されます。 このプロパティは、Cull Mode を Range に設定したときのみ表示されます。 |
Blend Position | float | 現在の位置属性値と新たに計算された位置の値の、ブレンドパーセンテージです。 このプロパティは、Composition Position を Blend に設定したときのみ表示されます。 |
Blend Color | float | 現在の方向属性値と新たに計算された方向の値の、ブレンドパーセンテージです。 このプロパティは、Composition Direction を Blend に設定したときのみ表示されます。 |
詳細
Compatibility : このブロックは現在、High Definition Render Pipeline、メタル以外のグラフィック API とのみ互換性があります。