deriv_rty (sm4 - asm)
Rendering-target equivalente di deriv_rtx.
deriv_rty[_sat] dest[.mask], |src0[_abs][.swizzle], |
---|
Elemento | Descrizione |
---|---|
Dest |
[in] Indirizzo del risultato dell'operazione. |
src0 |
[in] Componente nell'operazione. |
Commenti
Solo una singola coppia derivata x,y viene calcolata per ogni 2x2 stamp di pixel.
Questa operazione dipende dall'hardware.
Implementazione del rasterizzatore di riferimento per i triangoli:
- Pixel Shader esegue sempre Shader su 2x2 quad di pixel in lockstep (anche tramite il controllo flusso, mascherando i pixel disabilitati).
- I quad hanno sempre coordinate pixel numerate (sia x che y) per pixel in alto a sinistra.
- I pixel fittizi vengono eseguiti fuori dalla primitiva se la primitiva è troppo piccola per riempire un quad 2x2.
- deriv_rtx viene calcolato scegliendo prima 2 pixel: il pixel corrente e l'altro pixel con la stessa coordinata y dal quad. Il risultato viene quindi calcolato come: src0(odd x pixel) - src0(anche x pixel) [per componente]
- deriv_rty viene calcolato scegliendo prima 2 pixel: il pixel corrente e l'altro pixel con la stessa coordinata x dal quad. Il risultato viene quindi calcolato come: src0(y pixel dispari) - src0(anche y pixel) [per componente]
Questa istruzione si applica alle fasi dello shader seguenti:
Vertex shader | Geometry shader | Pixel shader |
---|---|---|
x |
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 |