Skip to main content
関連するシェーダーで使用されるグローバル ルート シグネチャ状態サブオブジェクトを定義します。

構文

メンバー

pGlobalRootSignature
型: ID3D12RootSignature *
グローバル ルート シグネチャとして機能するルート シグネチャ。ステート オブジェクトはこのシグネチャへの参照を保持します。

解説

このサブオブジェクトはステート オブジェクト内で任意です。特定のシェーダー関数に関連付けられたグローバルおよび/またはローカル ルート シグネチャの組み合わせは、シェーダーで宣言されたすべてのリソース バインディングを、グローバルとローカル ルート シグネチャの間で重複することなく定義する必要があります。 呼び出しグラフ内の任意の関数が特定のグローバル ルート シグネチャに関連付けられている場合、グラフ内の他の関数は同じグローバル ルート シグネチャに関連付けられるか関連付けなしとするかのいずれかでなければならず、シェーダー エントリ (呼び出しグラフのルート) はグローバル ルート シグネチャに関連付けられている必要があります。 ステート オブジェクト内では、異なるシェーダーが異なるグローバル ルート シグネチャ (または関連付けなし) を使用できますが、コマンド リストからの特定の DispatchRays 操作中に参照される任意のシェーダーは、コマンド リスト上でコンピュート ルート シグネチャとして設定されているものと同じグローバル ルート シグネチャを指定している必要があります。したがって、シェーダーの異なるサブセットに関連付けられた複数のグローバル ルート シグネチャを持つ単一の大きなステート オブジェクトを定義することは有効です。一部のシェーダーが異なるグローバル ルート シグネチャを使用するからといって、アプリはステート オブジェクトを分割する必要はありません。

要件

ヘッダー: d3d12_xs.h または d3d12_x.h
ライブラリ: d3d12_xs.lib または d3d12_x.lib
サポートされているプラットフォーム: XBOX Series 本体および XBOX One ファミリ
最終更新日 2026年8月24日