Shader software

Gli shader software vengono implementati per consentire lo sviluppo di shader senza supporto hardware sottostante. Supportano il set di funzionalità completo. Poiché vengono implementati nel software, non produrranno le migliori prestazioni.

Versione Set di funzionalità Requisiti
vs_2_sw Tutte le funzionalità di vs_2_x Supportato solo dall'elaborazione dei vertici software e da un dispositivo di riferimento.
vs_3_sw Tutte le funzionalità di vs_3_0 Supportato solo dall'elaborazione dei vertici software e da un dispositivo di riferimento.
ps_2_sw Tutte le funzionalità di ps_2_x Supportato solo da un dispositivo di riferimento.
ps_3_sw Tutte le funzionalità di ps_3_0 Supportato solo da un dispositivo di riferimento.

 

Alcune convalide sono rilassate per gli shader software. Ciò è utile per scopi di debug e creazione di prototipi. Le convalide seguenti sono disattivate: (tutte le altre convalide rimangono invariate)

Validation type (Tipo di convalida) Relax
Conteggi istruzioni: Questo è rilassato per vs_2_sw, vs_3_sw e ps_2_sw, ps_3_sw. Sono consentite istruzioni illimitate.
Conteggi costanti float: Questo è rilassato per vs_2_sw, vs_3_sw e ps_2_sw, ps_3_sw. Sono consentite fino a 8192 costanti.
Conteggi costanti integer: Questo è rilassato per vs_2_sw, vs_3_sw e ps_2_sw, ps_3_sw. Sono consentite fino a 2048 costanti.
Conteggi costanti booleane: Questo è rilassato per vs_2_sw, vs_3_sw e ps_2_sw, ps_3_sw. Sono consentite fino a 2048 costanti.
Profondità di lettura dipendente: Questo è rilassato per ps_2_sw. Come in vs_3_0 e ps_3_0, sono consentite letture dipendenti illimitate.
Numero di istruzioni ed etichette di controllo del flusso: Questo è rilassato per vs_2_sw. Sono consentite istruzioni di controllo del flusso illimitate e fino a 2048 etichette.
Numero di cicli/inizio/passaggio: Sono rilassate per vs_2_sw, vs_3_sw, ps_2_sw e ps_3_sw. Le dimensioni dei passaggi di iterazione e di inizio e interazione per le istruzioni rep e loop sono intergger con segno a 32 bit. Il numero di interazioni può essere fino a MAX_INT/64.
Limiti delle porte di lettura: vs_2_sw, vs_3_sw, ps_2_sw e ps_3_sw non hanno alcun limite di porta di lettura.
Numero di interpolatori: Esistono 16 registri: vs_3_0 (o#) in vs_3_sw e 10 registri ps_3_0 (v#) per ps_3_sw.

 

Informazioni di riferimento su Asm Shader