Cosa dovrei imparare per lo sviluppo di giochi, DirectX o OpenGL?
OpenGL . Si prega di fare riferimento alle mie altre risposte per il materiale di riferimento. Come posso iniziare con OpenGL ES su Android?
Ad alto livello, ecco come funziona la pipeline grafica
1) Viene descritta la geometria del modello 3D.
2) La geometria viene divisa in triangoli. Le trasformazioni applicate al modello (cioè ai triangoli del modello) sono chiamate Trasformazioni del modello
3) Abbiamo una telecamera virtuale corrispondente all'occhio. Le trasformazioni applicate alla telecamera sono chiamate View Transforms
4) Per dare un effetto 3D, viene applicata la proiezione prospettica che converte il modello 3D nello spazio 2D. Queste sono chiamate Trasformazioni di proiezione
5) Le trasformazioni di proiezione della vista del modello trasformano gli oggetti e li mettono nello spazio dello schermo. Queste sono descritte da matrici MVP
6) Rasterizzare i triangoli per ottenere i pixel (sono chiamati frammenti fino alla fase finale)
7) I frammenti sono ombreggiati. Può essere semplice come usare il colore interpolato o complesso (applicare illuminazione e texturing per ottenere realismo)
8) I frammenti sono combinati (mescolati) per ottenere un singolo pixel. La combinazione può essere qualsiasi operazione arbitraria come il blending o semplice come la visualizzazione del pixel più vicino all'osservatore. Questa fase di fusione combina i frammenti generati da (possibilmente diverse primitive che si sono sovrapposte e calcolano il colore finale
Impara di più sulla pipeline grafica da OpenGL Basics
Ora devi capire che ad un livello molto alto, noi facciamo quanto segue
1. Trasformazione - Trasforma la geometria nello spazio dello schermo
2. Rasterizzazione - Rasterizza i pixel (o frammenti)
3. Applicazione di illuminazione e texturing
4. Fusione dei frammenti in un singolo colore.
5. Gli shader sono codice definito dall'utente usato per personalizzare la pipeline
Espanderemo ciascuna di queste sezioni in dettaglio
Trasformazione
Guardate alcuni video introduttivi, ad esempio questo video della Samsung dà una panoramica delle trasformazioni
Avere familiarità con le trasformazioni che avvengono ad alto livello (queste sono trasformazioni di modello, vista e proiezione). Siate anche familiari con termini come View Frustum. Un po' di matematica di base aiuterà a sapere cosa sta succedendo nel Diario di un programmatore grafico. Facoltativamente, se vuoi conoscere più dettagli e la matematica GLSL Programmazione/Trasformazioni dei vertici
Ora inizia a leggere gli articoli
Un'introduzione alle moderne OpenGL. Indice
Pagina su Ntu
Pagina su Ntu
OpenGL
La pipeline grafica di base
Articoli simili
- Quali sono le differenze tra le OpenGL moderne e quelle vecchie? L'OpenGL moderno è difficile, quindi dovrei iniziare con il vecchio OpenGL?
- Dovrei imparare DirectX o OpenGL?
- C'è un motore di gioco popolare o un motore grafico che usa Vulkan invece di DirectX o OpenGL? Cosa porta Vulkan al tavolo?
- Qual è la differenza tra OpenGL e DirectX?