Freigeben über


dcl_indexableTemp (sm4 – asm)

Deklariert ein indizierbares, temporäres Register.

dcl_indexableTemp xN[size], ComponentCount
Element BESCHREIBUNG
Xn
[in] Ein temporäres indizierbares Register.
  • N ist eine ganze Zahl, die die Registernummer identifiziert.
  • [size] ist ein optionaler ganzzahliger Wert. Die Anzahl der Elemente im Registerarray.
ComponentCount
[in] Ein optionaler ganzzahliger Wert. Die Anzahl der Komponenten im Registerarray.

Ein Register enthält genügend Speicherplatz für einen 32-Bit-Wert mit vier Komponenten. die Anzahl der Elemente im Array temporärer Register (indexierbar und nicht indizierbar) darf 4096 nicht überschreiten.

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 mit Shader Model 4 erstellen.

Beispiel

Hier finden Sie einige Beispiele für den Code, der für indizierbare Register generiert wurde.

dcl_indexableTemp x0[23], 2 ; // An indexable array of 23, 2-component, 32-bit elements
dcl_indexableTemp x1[16], 4 ; // An indexable array of 16, 4-component, 32-bit elements

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

Shadermodell 4-Assembly (DirectX HLSL)