2013-03-06 16 views
11

So che ci sono diversi argomenti su questa domanda, ma voglio specificare ciò che Iam sta cercando.Learning DirectX nel 2013

Così ho imparato OpenGL e ho ottenuto le basi di shader (pipeline programmabili), buffer di vertici, buffer di indice, tutti insieme, chiamati "Modern OpenGL".

Iam interessato se esiste un tale termine per DirectX.

Ci sono diverse opinioni su quale versione di DirectX scegliere. 9 funziona su quasi tutti i PC Windows, mentre 11 è limitato alle nuove GPU e Windows Vista +.

La mia GPU supporta 9, mentre il mio sistema operativo supporta 11. Devo scegliere software accelerato 11 o hardware accelerato 9?

DirectX9 è qualcosa come OpenGL deprecato? Quindi se imparo DirectX9 invece di 11, è tempo perso o è utilizzabile? In altre parole. DirectX9 offre le offerte OpenGL moderne?

In tal caso, quali fonti (tutorial/libri/video) dovrei utilizzare per acquisire le competenze di base dell'uso di shader, buffer, ecc. In DirectX? Ad esempio in un tutorial ho trovato questa riga: d3dDevice-> BeginScene(); E mi ha molto ricordato l'OpenGL deprecato. Non voglio imparare DirectX all'avanguardia, ma voglio fare un buon scambio tra compatibilità e concetti moderni.

In un altro thread ho trovato questo libro: http://www.amazon.com/dp/1598220160/?tag=stackoverfl08-20

Ma Iam un po 'paura se perdo il mio tempo su roba vecchia deprecato.

Per riassumere, ho bisogno di un aiuto, non riesco davvero a fare una foto di quale direzione andare.

Spero che tu abbia i miei punti.

risposta

8

Si consiglia di scaricare il DirectX SDK June 2010.

DirectX consente di scegliere quale versione di DirectX si desidera utilizzare durante la creazione del dispositivo, quindi non preoccuparti.

Questo è fatto nel D3D11CreateDeviceAndSwapChain nel D3D_FEATURE_LEVEL.

Un puntatore a una matrice di D3D_FEATURE_LEVELs, che determinano l'ordine dei livelli funzionalità per tentare di creare.

Quello che consiglierei di fare è scaricare l'SDK di DirectX giugno 2010 e controllare alcuni esempi con esso. Di quanto dovresti decidere come vuoi andare avanti.

Per i libri, suggerirei Introduction to 3D Game Programming with DirectX 11 o DirectX 10 o Directx 9. Qualunque versione tu decida di seguire.

+1

Vado con la versione 9.0c del libro. Forse non è la scelta più professionale, ma non intendo comunque indirizzare la grafica di fascia alta, quindi 9.0c dovrebbe fare il lavoro. – DonCalito

2

Non vorrei provare a codificare DirectX 11 utilizzando una CPU che non ha il supporto hardware per questo. Sarà tutto ma un'esperienza piacevole. Invece, comprerei una nuova scheda grafica (non deve essere molto costosa) o codice in DirectX 9.

Il retro della codifica in DirectX 9 è molto diverso dal 10/11. Quindi, imparare 9 non ti fa molto se un giorno vuoi imparare l'11 settembre, eccetto per le basi reali.