Funzionalità API (Direct3D 10)
La pipeline grafica Direct3D 10 rappresenta un cambiamento fondamentale dell'architettura, ricompilato da zero in hardware e software per alimentare la nuova generazione di giochi e applicazioni multimediali 3D. Usa windows Display Driver Model (WDDM), che consente miglioramenti delle prestazioni e del comportamento, ad esempio la memoria GPU virtuale.
Gli sviluppatori che hanno familiarità con Direct3D 9 scopriranno una serie di miglioramenti funzionali e miglioramenti delle prestazioni in Direct3D 10, tra cui:
- Possibilità di elaborare intere primitive nella nuova fase geometry-shader.
- Possibilità di restituire i dati dei vertici generati dalla pipeline in memoria usando la fase di output del flusso.
- Organizzazione dello stato della pipeline in 5 oggetti di stato non modificabili, consentendo una configurazione rapida della pipeline.
- Organizzazione di costanti shader in buffer costanti, riducendo al minimo l'overhead della larghezza di banda per fornire dati costanti shader.
- Possibilità di eseguire lo scambio e la configurazione di materiali per primitiva usando uno shader geometry.
- Nuovi tipi di risorse (incluse matrici di trame che possono essere indicizzati dagli shader) e formati di risorse.
- Maggiore generalizzazione dell'accesso alle risorse tramite una visualizzazione.
- I bit di funzionalità hardware legacy (maiuscole) sono stati rimossi a favore di un set completo di funzionalità garantite, destinato all'hardware di classe Direct3D 10 (minimo).
- Runtime a più livelli: l'API Direct3D 10 viene costruita con livelli, a partire dalle funzionalità di base e creando funzionalità facoltative e assist per sviluppatori (debug e così via) nei livelli esterni.
- Integrazione completa di HLSL: tutti gli shader Direct3D 10 vengono scritti in HLSL e implementati con il core common-shader.
- Aumento del numero di destinazioni di rendering, trame e campionatori. Non esiste anche alcun limite di lunghezza dello shader.
- Operazioni di shader integer e bit per bit.
- Readback di una superficie depth/stencil o di una risorsa multicampionato, una volta che non è più associato come destinazione di rendering.
- Supporto da alfa a copertura multicampionato.
Esistono altre differenze comportamentali che gli sviluppatori Direct3D 9 devono essere a conoscenza anche (vedere Considerazioni da Direct3D 9 a Direct3D 10).
Ecco un elenco delle funzionalità di Direct3D 9 che non sono più supportate o sono state riviste in Direct3D 10 (vedere Funzionalità deprecate).
Argomenti correlati