次の方法で共有


D3D12DDI_THREAD_LAUNCH_NODE_PROPERTIES_0108構造体 (d3d12umddi.h)

D3D12DDI_THREAD_LAUNCH_NODE_PROPERTIES_0108 構造体は、スレッド起動ノードのプロパティを記述します。

構文

typedef struct D3D12DDI_THREAD_LAUNCH_NODE_PROPERTIES_0108 {
  D3D12DDI_NODE_ID_0108               FinalName;
  BOOL                                bProgramEntry;
  D3D12DDI_NODE_IO_KIND_0108          InputNodeIOKind;
  UINT                                InputNodeIOFlags;
  UINT                                InputRecordSizeInBytes;
  UINT                                GroupSharedUsageInBytes;
  UINT                                MaxRecursionDepth;
  const UINT                          *pLocalRootArgumentsTableIndex;
  const D3D12DDI_NODE_0108            *pShareInputOfNode;
  const D3D12DDI_NODE_LIST_ENTRY_0108 *pInputNodes;
  const D3D12DDI_NODE_LIST_ENTRY_0108 *pNodesSharingInputWithThisNode;
  UINT                                NumOutputs;
  const D3D12DDI_NODE_OUTPUT_0108     *pOutputs;
} D3D12DDI_THREAD_LAUNCH_NODE_PROPERTIES_0108;

メンバーズ

FinalName

アプリケーション レベルで行う省略可能な名前変更の後に、ノードの最終的な名前を指定する D3D12DDI_NODE_ID_0108 構造体。

bProgramEntry

TRUE の場合、現在のノードはプログラム エントリであり、D3D12DDI_WORK_GRAPH_DESC_0108pEntrypoints リストに表示されます。 そのため、このパラメーターは冗長ですが、わかりやすくするために存在します。 シェーダーは、ノードがエントリ ポイントであることを宣言していない可能性がありますが、ランタイムは、それが 1 つでなければならないと判断した可能性があります。または、API で何らかの方法で選択がオーバーライドされている可能性があります。 グラフ内の他のノードの対象になっていないノードの場合、このメンバーは常に TRUE になります。

InputNodeIOKind

入力のクラスを指定する D3D12DDI_NODE_IO_KIND_0108 列挙体。 ノード入力宣言参照してください。

InputNodeIOFlags

ノードの入力 I/O に関する追加情報を提供するフラグ。 D3D12DDI_NODE_IO_FLAGS_0108D3D12DDI_NODE_IO_FLAGS_FLAG_MASK 内のフラグを参照してください。 入力の場合、適用される唯一のフラグは D3D12DDI_NODE_IO_FLAG_TRACK_RW_INPUT_SHARINGです。

InputRecordSizeInBytes

入力レコードのサイズ (バイト単位)。 InputNodeIOKind が D3D12DDI_NODE_IO_KIND_EMPTY_INPUT_0108場合は 0 にできます。

GroupSharedUsageInBytes

ノードによるグループ共有使用量のサイズ (バイト単位)。

MaxRecursionDepth

シェーダーによって宣言された最大再帰数。 値 0 は再帰がないことを意味します。

pLocalRootArgumentsTableIndex

ローカル ルートシグネチャがシェーダーに関連付けられている場合、またはシェーダーが使用するローカル ルート引数テーブル インデックスを明示的に宣言した場合、0 ベースのインデックスがここに示されます。 ランタイムには、場所が自動的に割り当てられている可能性があります。 ローカル ルートシグネチャがシェーダーに関連付けられていない場合、これは nullptrされます。

pShareInputOfNode

このノードと同じ入力を共有するノードへの省略可能なポインター。現在のノードが別のノードの入力を共有していない場合は nullptr。 このノードが作業グラフ内の別のノードからの入力を共有している場合、pShareInputOfNode はそのノードを指し、D3D12DDI_NODE_0108 構造体で表されます。 複数のノードが入力共有セット内にある場合、ソース ノード以外はすべてソース ノードを指し、ソース ノードは代わりに pNodesSharingInputWithThisNode パラメーター 他のノードを指すように設定します。

pInputNodes

現在のノードを対象とするノード ((D3D12DDI_NODE_0108) のリスト (D3D12DDI_NODE_LIST_ENTRY_0108) へのポインター。 pInputNodes は、このノードを対象とするノードがない場合に nullptr されます。

pNodesSharingInputWithThisNode

現在のノードと入力を共有するノード ((D3D12DDI_NODE_0108) のリスト (D3D12DDI_NODE_LIST_ENTRY_0108) へのポインター。 pNodesSharingInputWithThisNode は、このノードと入力を共有するノードがない場合に nullptr

NumOutputs

このノードが出力するノードの数。

pOutputs

出力定義を含む構造体D3D12DDI_NODE_OUTPUT_0108 NumOutputs の配列へのポインター。 pOutputs は、このノードが他のノードに出力されない場合に nullptr されます。

備考

ここで示すプロパティは、ノードのシェーダーで宣言されたプロパティよりも優先されます (オーバーライド)。 ドライバーは、最終的なプロパティの選択として、ここに記載されているプロパティを常に使用する必要があります。 ドライバーが何かがオーバーライドされたかどうかを気にする場合は、ここでの設定をシェーダーが宣言した設定と比較できます。

詳細については、「作業グラフの」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 11 バージョン 24H2 (WDDM 3.2)
ヘッダー d3d12umddi.h

関連項目

D3D12DDI_SHADER_NODE_0108