Sampler (Direct3D 9 asm-vs)
Un sampler è uno pseudoregistro di input per un vertex shader, usato per identificare la fase di campionamento. Esistono quattro campionatori di vertex shader: da s0 a s3. Quattro superfici di trama possono essere lette in un singolo passaggio shader.
Sampler (Direct3D 9 asm-vs)s sono pseudoregistri perché non è possibile leggere o scrivere direttamente in tali registri.
Un'unità di campionamento corrisponde alla fase di campionamento delle trame, incapsulando lo stato specifico del campionamento fornito da SetSamplerState. Ogni campionatore identifica in modo univoco una singola superficie di trama, impostata sul campionatore corrispondente usando il SetTexture. Tuttavia, la stessa superficie di trama può essere impostata su più campionatori.
Durante il disegno, una texture non può essere impostata simultaneamente come destinazione di rendering e texture in una fase del processo.
Poiché sono presenti quattro campionatori, fino a quattro superfici di texture possono essere lette in un singolo passaggio di shader. Un campionatore potrebbe apparire come l'unico argomento nell'istruzione di caricamento della texture: texldl - vs.
In vs_3_0, se viene usato un campionatore, deve essere dichiarato all'inizio del programma shader usando l'istruzione dcl_samplerType (sm3 - vs asm).
Versioni del vertex shader | 1_1 | 2_0 | 2_sw | 2_x | 3_0 | 3_sw |
---|---|---|---|---|---|---|
Campionatore | x | x |
Argomenti correlati