Freigeben über


D3D12_DESCRIPTOR_RANGE-Struktur (d3d12.h)

Beschreibt einen Deskriptorbereich.

Syntax

typedef struct D3D12_DESCRIPTOR_RANGE {
  D3D12_DESCRIPTOR_RANGE_TYPE RangeType;
  UINT                        NumDescriptors;
  UINT                        BaseShaderRegister;
  UINT                        RegisterSpace;
  UINT                        OffsetInDescriptorsFromTableStart;
} D3D12_DESCRIPTOR_RANGE;

Member

RangeType

Ein D3D12_DESCRIPTOR_RANGE_TYPE typisierter Wert, der den Typ des Deskriptorbereichs angibt.

NumDescriptors

Die Anzahl der Deskriptoren im Bereich. Verwenden Sie -1 oder UINT_MAX, um eine ungebundene Größe anzugeben. Wenn ein bestimmter Deskriptorbereich nicht gebunden ist, muss er entweder der letzte Bereich in der Tabellendefinition sein, oder der folgende Bereich in der Tabellendefinition muss einen Wert für OffsetInDescriptorsFromTableStart aufweisen, der nicht D3D12_DESCRIPTOR_RANGE_OFFSET_APPEND ist.

BaseShaderRegister

Das Basis-Shaderregister im Bereich. Für Shaderressourcensichten (SRVs) wird 3 beispielsweise ": register(t3);" in HLSL zugeordnet.

RegisterSpace

Der Registerbereich. Kann in der Regel 0 sein, lässt aber zu, dass mehrere Deskriptorarrays unbekannter Größe nicht überlappen. Wenn Sie z. B. für SRVs das Beispiel in der BaseShaderRegister-Memberbeschreibung erweitern, wird 5 in HLSL ": register(t3,space5);" zugeordnet.

OffsetInDescriptorsFromTableStart

Der Offset in Deskriptoren vom Anfang der Deskriptortabelle, die als Stammargumentwert für diesen Parameterslot festgelegt wurde. Dieser Wert kann D3D12_DESCRIPTOR_RANGE_OFFSET_APPEND sein, was angibt, dass dieser Bereich sofort dem vorherigen Bereich folgen sollte.

Hinweise

Diese Struktur ist ein Element der D3D12_ROOT_DESCRIPTOR_TABLE-Struktur .

Anforderungen

Anforderung Wert
Header d3d12.h

Weitere Informationen

CD3DX12_DESCRIPTOR_RANGE

Kernstrukturen