Baked GI ノード
説明
頂点またはフラグメントの位置の Baked GI 値へのアクセスを提供します。ライトプローブのサンプリングには Position (位置) と Normal (法線) の入力が必要す。また、すべての可能なライトマップのサンプリングには、ライトマップ座標、Static UV (静的UV)、Dynamic UV (動的の UV) が必要です。
ノート: この ノード の動作はグローバルで未定義になっています。Shader Graph はこのノードの機能を定義しません。その代わりに各レンダーパイプラインが、この ノード 用に実行する HLSL コードを定義します。
レンダーパイプラインによって、もたらされる結果が異なる場合があります。1 つのレンダーパイプラインで作成したシェーダーを両方で使用したい場合は、本番環境にする前に両方のパイプラインで確認を行ってください。一方のレンダーパイプラインで定義されている ノード がもう一方のレンダーパイプラインでは未定義になる場合があります。この ノード は、未定義の場合は 0 (黒) を返します。
対応の Unity レンダーパイプライン
- HD レンダーパイプライン (HDRP)。ただし、このノードは、HDRP の Unlit Master Node をターゲットとするシェーダーグラフでは機能しません。
- ユニバーサルレンダーパイプライン
ポート
Name | Direction | タイプ | バインディング | 説明 |
---|---|---|---|---|
Position | 入力 | Vector 3 | 位置 (ワールド空間) | メッシュの頂点あるいはフラグメントの Position (位置) |
Normal | 入力 | Vector 3 | 法線 (ワールド空間) | メッシュの頂点あるいはフラグメントの Normal (法線) |
Static UV | 入力 | Vector 2 | UV1 | 静的ライトマップのライトマップ座標 |
Dynamic UV | 入力 | Vector 2 | UV2 | 動的ライトマップのライトマップ座標 |
Out | 出力 | Vector 3 | なし | 出力される色の値 |
制御
Name | タイプ | オプション | 説明 |
---|---|---|---|
Apply Lightmap Scaling | トグル | True、False | 有効にすると、ライトマップは自動的にスケールされ、オフセットされます。 |
生成されるコードの例
以下のサンプルコードは、このノードの出力の一例を示したものです。
void Unity_BakedGI_float(float3 Position, float3 Normal, float2 StaticUV, float2 DynamicUV, out float Out)
{
Out = SHADERGRAPH_BAKED_GI(Position, Normal, StaticUV, DynamicUV, false);
}