dcl_input_sv (sm4 - asm)
Dichiara un registro shader-input che prevede che venga fornito un valore di sistema da una fase precedente.
dcl_input_sv vN[.mask], systemValueName[, interpolationMode] |
---|
Elemento | Descrizione |
---|---|
vN |
[in] Registro dei dati dei vertici.
|
systemValueName |
[in] Nome del valore di sistema che è una stringa (vedere semantica del valore di sistema) senza il prefisso "SV_". |
interpolationMode |
[in] Facoltativo. Modalità di interpolazione che influisce sulla modalità di calcolo dei valori durante la rasterizzazione; la modalità viene usata solo da un pixel shader. Può essere uno dei valori seguenti:
|
Una maschera componente per una dichiarazione di valore di sistema può essere qualsiasi subset appropriato di [xyzw]; le dichiarazioni potrebbero non sovrapporsi (ogni dichiarazione deve seguire la sequenza xyzw). Quando si dichiarano valori di sistema scalari (distanza di clip e distanza del cull, ad esempio), è possibile dichiarare più valori di sistema in un singolo registro. In tal caso, assicurarsi che altri modificatori come le modalità di interpolazione corrispondano.
Questa istruzione si applica alle fasi dello shader seguenti:
Vertex shader | Geometry shader | Pixel shader |
---|---|---|
x | x | x |
Questa istruzione è inclusa per facilitare il debug di uno shader nell'assembly; non è possibile creare uno shader nel linguaggio dell'assembly usando Shader Model 4.
Esempio
Di seguito sono riportati alcuni esempi:
// valid
dcl_input v0.y, linear
dcl_input_sv v0.w, clipDistance
dcl_input_sv v0.z, cullDistance
// invalid declarations
dcl_input v0.y, linear
dcl_input_sv v0.x, clipDistance // the y component was previously declared, this declaration must use
// either the z or w component
dcl_input v0.y, linearNoPerspective // the interpolation mode is linear-no-perspective
dcl_input_sv v0.z, renderTargetArrayIndex, constant // the interpolation modes is constant
// the interpolation modes must match
Modello di shader minimo
Questa funzione è supportata nei modelli shader seguenti.
Modello di shader | Supportato |
---|---|
Modello shader 5 | sì |
Modello shader 4.1 | sì |
Modello shader 4 | sì |
Modello shader 3 (DirectX HLSL) | no |
Modello shader 2 (DirectX HLSL) | no |
Modello shader 1 (DirectX HLSL) | no |