Condividi tramite


vs_2_x

Un vertex shader programmabile è costituito da un set di istruzioni che operano sui dati dei vertici. Registra i dati in e fuori dall'ALU. È possibile applicare un controllo aggiuntivo per modificare l'istruzione, i risultati o i dati scritti.

La versione del vertex shader vs_2_x estende il set di funzionalità supportato da vs_2_0. Ogni funzionalità aggiuntiva è rappresentata da un limite corrispondente nella struttura D3DCAPS9 all'interno di D3DVS20CAPS. Per usare una delle funzionalità avanzate rappresentate da questi limiti, la versione del vertex shader deve essere specificata come vs_2_x.

Nuove funzioni e caratteristiche

Le nuove funzionalità sono le seguenti:

Controllo flusso dinamico

Se D3DVS20CAPS> 0, sono supportate le istruzioni di controllo del flusso dinamico seguenti:

Se è impostato anche D3DVS20CAPS , sono supportate le istruzioni aggiuntive per il controllo del flusso seguenti:

L'intervallo di valori per la profondità del controllo di flusso dinamico è compreso tra 0 e 24 ed è uguale alla profondità di annidamento delle istruzioni di controllo del flusso dinamico (vedere Flow Control Nesting Limits per informazioni dettagliate). Se questo limite è zero, il dispositivo non supporta le istruzioni di controllo del flusso dinamico.

Numero di registri temporanei

D3DVS20CAPS rappresenta il numero di registri temporaneisupportati dal dispositivo. L'intervallo di valori per questo limite è compreso tra 12 e 32.

Profondità di annidamento del flusso statico

D3DVS20CAPS rappresenta la profondità di annidamento di due tipi di istruzioni di controllo del flusso statico:/ ciclo - vsrep - vs callnz/bool- vsif bool/ - vs. ciclo - vs rep - vs. Istruzioni possono essere annidate fino a D3DVS20CAPS deep. In modo indipendente, chiamare - vs/callnz bool - le istruzioni possono essere annidate fino a D3DVS20CAPS deep. Se anche D3DVS20CAPS è impostato, callnz pred - vs viene conteggiato verso la profondità di annidamento della chiamata - vs/callnz bool - vs/if bool - vs (vedere Flow Control Nesting Limits per informazioni dettagliate).

Predicazione

Se D3DVS20CAPS è impostato, il dispositivo supporta setp_comp - vs e predicazione delle istruzioni. Se D3DVS20CAPS è maggiore di 0, sono supportate le istruzioni aggiuntive di controllo del flusso dinamico seguenti:

Conteggio istruzioni

Ogni vertex shader può avere fino a 256 istruzioni archiviate. Il numero di istruzioni eseguite può essere molto più elevato (a causa del supporto ciclo/rep) e viene limitato da D3DCAPS9, che deve essere almeno 0xFFFF.

Vertex Shader