Freigeben über


D3D12DDI_BROADCASTING_LAUNCH_NODE_PROPERTIES_0108 Struktur (d3d12umddi.h)

Die D3D12DDI_BROADCASTING_LAUNCH_NODE_PROPERTIES_0108 Struktur beschreibt die Eigenschaften eines Sendestartknotens in einem Arbeitsdiagramm.

Syntax

typedef struct D3D12DDI_BROADCASTING_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 UINT                               *pDispatchGrid;
  const UINT                               *pMaxDispatchGrid;
  const D3D12DDI_RECORD_DISPATCH_GRID_0108 *pRecordDispatchGrid;
  const D3D12DDI_NODE_LIST_ENTRY_0108      *pInputNodes;
  const D3D12DDI_NODE_LIST_ENTRY_0108      *pNodesSharingInputWithThisNode;
  UINT                                     NumOutputs;
  const D3D12DDI_NODE_OUTPUT_0108          *pOutputs;
} D3D12DDI_BROADCASTING_LAUNCH_NODE_PROPERTIES_0108;

Angehörige

FinalName

Eine D3D12DDI_NODE_ID_0108 Struktur, die den endgültigen Namen des Knotens nach optionalen Umbenennungen auf Anwendungsebene angibt.

bProgramEntry

Wenn TRUE, ist der aktuelle Knoten ein Programmeintrag und wird in der liste pEntrypoints in D3D12DDI_WORK_GRAPH_DESC_0108aufgeführt. Als solche ist dieser Parameter redundant, aber es ist für Klarheit vorhanden. Der Shader hat möglicherweise nicht deklariert, dass der Knoten ein Einstiegspunkt ist, aber die Laufzeit hat möglicherweise festgestellt, dass er eins sein muss, oder bei der API wurde die Auswahl möglicherweise auf irgendeine Weise überschrieben. Dieses Element ist immer WAHR für einen Knoten, der nicht auf andere Knoten im Diagramm ausgerichtet ist.

InputNodeIOKind

Eine D3D12DDI_NODE_IO_KIND_0108 Enumeration, die die Eingabeklasse angibt. Siehe Knoteneingabedeklaration.

InputNodeIOFlags

Flags, die zusätzliche Informationen zur Eingabe-E/A des Knotens bereitstellen. Sehen Sie sich die Flags in D3D12DDI_NODE_IO_FLAGS_FLAG_MASK in D3D12DDI_NODE_IO_FLAGS_0108an. Bei einer Eingabe ist das einzige Kennzeichen, das gilt, D3D12DDI_NODE_IO_FLAG_TRACK_RW_INPUT_SHARING.

InputRecordSizeInBytes

Größe des Eingabedatensatzes in Byte. Dies kann 0 sein, wenn InputNodeIOKind-D3D12DDI_NODE_IO_KIND_EMPTY_INPUT_0108ist.

GroupSharedUsageInBytes

Größe der vom Knoten freigegebenen Gruppennutzung in Byte.

MaxRecursionDepth

Maximale Rekursion, die vom Shader deklariert wird. Ein Wert von 0 bedeutet keine Rekursion.

pLocalRootArgumentsTableIndex

Wenn dem Shader eine lokale Stammsignatur zugeordnet wurde und/oder der Shader explizit einen lokalen Stammargumenttabellenindex deklariert hat, den er verwenden möchte, wird auf den 0-basierten Index hier verwiesen. Die Laufzeit hat möglicherweise automatisch einen Speicherort zugewiesen. Wenn dem Shader keine lokale Stammsignatur zugeordnet wurde, wird dies nullptr.

pShareInputOfNode

Optionaler Zeiger auf einen Knoten, der dieselbe Eingabe mit diesem Knoten gemeinsam verwendet, oder nullptr, wenn der aktuelle Knoten die Eingabe eines anderen Knotens nicht gemeinsam verwendet. Wenn dieser Knoten seine Eingabe von einem anderen Knoten im Arbeitsdiagramm teilt, pShareInputOfNode auf diesen Knoten zeigt, dargestellt durch eine D3D12DDI_NODE_0108 Struktur. Wenn sich mehrere Knoten in einem Eingabefreigabesatz befinden, verweist der Quellknoten auf den Quellknoten, und der Quellknoten legt stattdessen den pNodesSharingInputWithThisNode Parameter so fest, dass er auf die anderen verweist.

pDispatchGrid

Wenn der Knoten eine feste Verteilerrastergröße aufweist, wird er hier als 3-Komponentenwert angegeben. Andernfalls ist dies nullptr.

pMaxDispatchGrid

Wenn der Knoten seine Verteilerrastergröße als Teil seines Eingabedatensatzes abruft, wird die maximale Verteilerrastergröße hier als 3-Komponentenwert angegeben. Andernfalls ist dies nullptr.

pRecordDispatchGrid

Wenn nullptr, enthält der Ausgabedatensatz nicht SV_DispatchGrid. Verweist sonst auf eine Beschreibung, wie SV_DispatchGrid im Ausgabedatensatz angezeigt werden. Siehe [D3D12DDI_RECORD_DISPATCH_GRID_0108].

pInputNodes

Zeigen Sie auf eine Liste (D3D12DDI_NODE_LIST_ENTRY_0108) von Knoten ((D3D12DDI_NODE_0108), die auf den aktuellen Knoten abzielen. pInputNodes- ist nullptr, wenn kein Knoten auf diesen Knoten ausgerichtet ist.

pNodesSharingInputWithThisNode

Zeiger auf eine Liste (D3D12DDI_NODE_LIST_ENTRY_0108) von Knoten ((D3D12DDI_NODE_0108), die Eingaben für den aktuellen Knoten freigeben. pNodesSharingInputWithThisNode ist nullptr, wenn keine Knoten Eingaben für diesen Knoten freigeben.

NumOutputs

Anzahl der Knoten, an die dieser Knoten ausgegeben wird.

pOutputs

Zeiger auf ein Array von NumOutputsD3D12DDI_NODE_OUTPUT_0108 Strukturen, die Ausgabedefinitionen enthalten. pOutputsnullptr ist, wenn dieser Knoten nicht an andere Knoten ausgegeben wird.

Bemerkungen

Alle hier aufgelisteten Eigenschaften haben Vorrang vor (Außerkraftsetzung), was möglicherweise im Shader für den Knoten deklariert wurde. Der Treiber muss immer die hier aufgelisteten Eigenschaften als endgültige Eigenschaftsauswahl verwenden. Wenn sich ein Treiber darum kümmert, ob etwas außer Kraft gesetzt wurde, kann er eine beliebige Einstellung hier mit dem vergleichen, was der Shader deklariert hat.

Weitere Informationen finden Sie unter Arbeitsdiagramme.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 11, Version 24H2 (WDDM 3.2)
Header- d3d12umddi.h

Siehe auch

D3D12DDI_SHADER_NODE_0108