tex2D (riferimento HLSL) - Selezionare il livello mip
Esempi di una trama 2D usando una sfumatura per selezionare il livello mip.
ret tex2D,t, ddx, ddy) |
---|
Parametri
Elemento | Descrizione |
---|---|
s |
[in] Stato dell'esempio. |
T |
[in] Coordinate della trama. |
Ddx |
[in] Frequenza di modifica della geometria della superficie nella direzione x. |
fangoso |
[in] Frequenza di modifica della geometria della superficie nella direzione y. |
Valore restituito
Valore dei dati della trama.
Descrizione tipo
Nome | Ingresso/Uscita | Tipo di modello | Tipo di componente | Dimensione |
---|---|---|---|---|
s | in | Oggetto | sampler2D | 1 |
t | in | Vettore | float | 2 |
Ddx | in | Vettore | float | 2 |
fangoso | in | Vettore | float | 2 |
Ret | in uscita | Vettore | float | 4 |
Modello di shader minimo
Questa funzione è supportata nei modelli shader seguenti.
Modello di shader | Supportato |
---|---|
Modello shader 4 | Sì (solo pixel shader) |
Modello shader 3 (DirectX HLSL) | Sì (solo pixel shader) |
Modello shader 2 (DirectX HLSL) | Sì (solo pixel shader) |
Modello shader 1 (DirectX HLSL) | no |
- La riordinazione del codice significativa viene eseguita per spostare i calcoli sfumature all'esterno del controllo del flusso.
- Se il limite di D3DPSHADERCAPS2_0 viene impostato con D3DD3DPSHADERCAPS2_0_GRADIENTINSTRUCTIONS, il compilatore esegue il mapping di questa funzione a texldd.
Commenti
Quando il controllo del flusso è presente in uno shader, il risultato di un calcolo sfumatura richiesto all'interno di un determinato percorso di ramo è ambiguo quando i pixel adiacenti possono andare verso il basso percorsi di controllo del flusso separati. Pertanto, è considerato illegale usare qualsiasi operazione pixel shader che richiede che si verifichi un calcolo sfumatura in una posizione che si trova all'interno di un costrutto di controllo del flusso che può variare tra i pixel per una determinata primitiva che viene rasterizzata. Se una delle due parti di un'istruzione se con l'attributo branch usa una funzione sfumatura, è possibile che venga generato un errore del compilatore. Vedere se istruzione (DirectX HLSL).