dcl _ input (sm4 - asm)

Deklariert ein Shadereingaberegister.

dcl _ input v N [ .mask , ] [ interpolationMode ]
Element Beschreibung
vN[.mask]
[in] Ein Vertexdatenregister.
  • N ist eine ganze Zahl, die die Registernummer identifiziert.
  • [.mask] ist eine optionale Komponentenmaske (.xyzw), die angibt, welche der Registerkomponenten verwendet werden soll.
Interpolationmode
[in] Optional. Der Interpolationsmodus, der nur bei Pixel-Shadereingaberegistern verwendet wird. Es kann sich um einen der folgenden Werte handeln:
  • constant: Interpolieren Sie nicht zwischen Registerwerten.
  • linear: Lineare Interpolation zwischen Registerwerten.
  • linearCentroid: identisch mit linearem, aber beim Multisampling festgeklammerten Schwerpunkt.
  • linearNoperspective: identisch mit linear, aber ohne Perspektivkorrektur.
  • linearNoperspectiveCentroid– identisch mit linearem Schwerpunkt, der beim Multisampling an den Klammern klammert wird, keine Perspektivkorrektur.

Interpolationshinweise

Standardmäßig werden Scheitelpunktattribute von einem Pixelmittelpunkt interpoliert, wenn Multisample-Antialiasing verwendet wird. Wenn ein Pixelcenter nicht abgedeckt wird, wird ein Attribut vor der Interpolation zu einem Pixelcenter extrapoliert.

Für ein Pixel, das nicht vollständig abgedeckt ist, oder ein Attribut, das keinen Pixelzentrierungsbereich verdeckt, können Sie schwerpunktsyntierte Stichprobenentnahme angeben, die erzwingt, dass die Stichprobenentnahme an einer stelle innerhalb des abgedeckten Bereichs des Pixels erfolgt. Da eine Beispielmaske (sofern verwendet) angewendet wird, bevor der Schwerpunkt berechnet wird, kann jeder von der Beispielmaske maskierte Beispielspeicherort nicht als Schwerpunktposition ausgewählt werden.

Diese Anweisung gilt für die folgenden Shaderstufen:

Vertexshader Geometrie-Shader Pixelshader
x x x

Verwenden Sie dcl input _ sv _ (sm4 - asm),um die Eingabe als Systemwert zu identifizieren.

Diese Anweisung ist enthalten, um das Debuggen eines Shaders in der Assembly zu erleichtern. Sie können mit shader Model 4 keinen Shader in der Assemblysprache erstellen.

Beispiel

Die folgende Auflistung enthält einige Beispiele:

dcl_input v3.xyz

dcl_input v0.x, linearCentroid

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

Shader Model 4-Assembly (DirectX HLSL)