Condividi tramite


samplepos (sm4.1 - asm)

Esegue una query sulla posizione di un campione in una determinata visualizzazione delle risorse shader o nel rasterizzatore.

samplepos dest[.mask], srcResource[.swizzle], sampleIndex
Elemento Descrizione
Dest
[in] Indirizzo dei risultati dell'operazione.
srcResource
[in] Risorsa shader.
sampleIndex
[in] Indice dell'esempio (operando scalare).

Commenti

Questa istruzione restituisce la posizione di esempio 2D di sampleIndex per la risorsa specificata. È valido solo per le risorse che possono essere caricate usando ld2dms , a meno che il rasterizzatore non sia specificato come srcResource.

srcResource può essere un registro t# (una visualizzazione risorse shader) o un registro rasterizzatore.

L'istruzione calcola il vettore a virgola mobile (Xposition, Yposition, 0, 0).

Lo swizzle in srcResource consente di swizzled i valori restituiti in modo arbitrario prima che vengano scritti nella destinazione. La posizione del campione è relativa al centro del pixel, in base al sistema di coordinate pixel.

Se sampleIndex è fuori dai limiti, viene restituito un vettore zero. Se non è presente alcuna risorsa associata allo slot specificato, viene restituito 0.

samplepos può essere usato per elementi come la risoluzione personalizzata nel codice dello shader.

Questa istruzione si applica alle fasi dello shader seguenti:

Vertex shader Geometry shader Pixel shader
x

Modello minimo shader

Questa funzione è supportata nei modelli di shader seguenti.

Modello di shader Supportato
Modello shader 5
Modello shader 4.1
Modello shader 4 no
Modello shader 3 (DirectX HLSL) no
Modello shader 2 (DirectX HLSL) no
Modello shader 1 (DirectX HLSL) no

Assembly del modello shader 4 (DirectX HLSL)