Freigeben über


dcl_constantBuffer (sm4 - asm)

Deklariert einen Shaderkonstantenpuffer.

dcl_constantBuffer cbN[size], AccessPattern
Element BESCHREIBUNG
cbN[size]
[in] Ein Shaderkonstantenpuffer, wobei N eine ganze Zahl ist, die die Nummer des Konstantenpufferregisters und die Größe eine ganze Zahl darstellt, die die Anzahl der Elemente im Puffer angibt.
AccessPattern
[in] Die Art und Weise, in der über Shadercode auf den Puffer zugegriffen wird. Dies ist eine der folgenden:
Name BESCHREIBUNG
immediateIndexed Indizieren Sie den Puffer mit einem Literalwert.
dynamic_indexed Indizen des Puffers mit dem Ergebnis eines ausgewerteten Ausdrucks.

Diese Anweisung gilt für die folgenden Shaderphasen:

Vertexshader Geometrie-Shader Pixelshader
x x x

Diese Anweisung ist enthalten, um das Debuggen eines Shaders in der Assembly zu unterstützen. Sie können keinen Shader in der Assemblysprache mithilfe des Shadermodells 4 erstellen.

Beispiel

In diesem Beispiel wird ein Konstantenpuffer für das Register cb0 deklariert, das über 19 Elemente verfügt. Auf diese Elemente wird mit einem Literalindex zugegriffen.

dcl_constantbuffer  cb0[19], immediateIndexed

Minimales Shadermodell

Diese Funktion wird in den folgenden Shadermodellen unterstützt.

Shadermodell Unterstützt
Shadermodell 5 ja
Shadermodell 4.1 ja
Shadermodell 4 ja
Shadermodell 3 (DirectX HLSL) Nein
Shadermodell 2 (DirectX HLSL) Nein
Shadermodell 1 (DirectX HLSL) Nein

Assembly des Shadermodells 4 (DirectX HLSL)