_dcl-Ressource (sm4 – asm)

Deklariert eine Nicht-Multisampled-Shader-Eingaberessource.

dcl _ resource tN, resourceType, returnType(s)

Deklariert eine Multisampled-Shader-Eingaberessource.

dcl _ resource tN, resourceType size [ ] NN, returnType(s)
Element BESCHREIBUNG
t N
[in ] Das Texturregister, wobei N eine ganze Zahl ist, die die Registernummer angibt.
Resourcetype
[in ] Beliebiger Objekttyp, der auf der Seite textur-object aufgeführt ist.
resourceType [ size ] NN
[in ] einem Texture2D- oder Texture2DArray-Objekttyp (siehe Seite texture-object); size ist eine optionale ganze Zahl, die die Anzahl der Elemente im Array angibt. NN ist eine ganze Zahl, die die Anzahl der Multisamples angibt.
returnType(s)
[in ] pro Komponente gibt einen der folgenden Rückgabetypen zurück: UNORM, SNORM, SINT, UINT oder FLOAT. Die Anzahl der Rückgabetypen kann bis zu 1 (wenn alle Komponenten denselben Typ aufweisen), aber bis zu vier sein.

Auf eine Ressource wird in HLSL mithilfevon load zugegriffen. Auf eine Nicht-Multisamplingtextur kann auch mithilfe einer der HLSL-Texturobjekt-Beispielmethoden zugegriffen werden.

Wenn eine Ressource an eine Shaderphase gebunden ist, wird das Ressourcenformat anhand des Rückgabetyps überprüft.

Diese Anweisung gilt für die folgenden Shaderstufen:

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

Beispiel:

dcl_resource t3, buffer, UNORM

Shader-Mindestmodell

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)