dcl_tgsm_structured (sm5 - asm)
Deklarieren Sie einen Verweis auf eine Region mit freigegebenem Arbeitsspeicher, der für die Threadgruppe des Compute-Shaders verfügbar ist. Der Arbeitsspeicher wird als Array von Strukturen betrachtet.
dcl_tgsm_structured g#, structByteStride, structCount |
---|
Element | Beschreibung |
---|---|
G # |
[in] Ein Verweis auf einen Block des freigegebenen Arbeitsspeichers der Größe structByteStride * structCount Bytes. |
structByteStride |
[in] Die Strukturschritte. Dieser Wert ist ein uint in Bytes und muss ein Vielfaches von 4 sein. |
structCount |
[in] Die Anzahl der Strukturen. |
Bemerkungen
Der Gesamtspeicher für alle g# muss die Menge des verfügbaren freigegebenen Arbeitsspeichers pro Threadgruppe sein <, also 32kB oder 8192 32-Bit-Skalare.
Im Extremfall können Sie 8192 g# s insgesamt deklarieren, wenn jede eine structByteStride von 4 und einen structCount von 1 aufweist.
Im gegenteiligen Extrem können Sie ein einzelnes g# mit einem Strukturschritt von 32 kB und einer Strukturanzahl von 1 deklarieren.
Diese Anweisung gilt für die folgenden Shaderphasen:
Scheitelpunkt | Hull | Domain | Geometrie | Pixel | Compute |
---|---|---|---|---|---|
X |
Minimales Shadermodell
Diese Anweisung wird in den folgenden Shadermodellen unterstützt:
Shadermodell | Unterstützt |
---|---|
Shadermodell 5 | ja |
Shadermodell 4.1 | Nein |
Shadermodell 4 | Nein |
Shadermodell 3 (DirectX HLSL) | Nein |
Shadermodell 2 (DirectX HLSL) | Nein |
Shadermodell 1 (DirectX HLSL) | Nein |