O que devo aprender para o desenvolvimento de jogos, DirectX ou OpenGL?
OpenGL . Por favor, consulte minhas outras respostas para materiais de referência. Como eu começo com OpenGL ES no Android?
Em alto nível, é assim que funciona o pipeline gráfico
1) Geometria do Modelo 3D é descrita .
2) A geometria é dividida em triângulos. As transformações são aplicadas ao modelo (ou seja, os triângulos do modelo) são chamados Transformações do Modelo
3) Temos uma câmera virtual correspondente ao olho. As transformações aplicadas na câmara chamam-se Transformações de Vista
4) Para dar um efeito 3D, aplica-se a projecção em perspectiva que converte o modelo 3D em espaço 2D. Estas chamam-se Transformações de Projecção
5) Transformações de Projecção de Modelo de Vista Transformam os objectos e colocam-nos no espaço da tela. Estas são descritas pelas matrizes do MVP
6) Rasterize os triângulos para obter os pixels (eles são chamados de fragmentos até você chegar à fase final)
7) Os fragmentos estão sombreados. Pode ser tão simples como usar cores interpoladas ou complexas (Aplicar iluminação e texturas para obter realismo)
8) Os fragmentos são combinados (misturados) para obter um único pixel. A combinação pode ser qualquer operação arborizada como a mistura ou tão simples como mostrar o pixel mais próximo do observador . Esta fase de mistura combina os fragmentos gerados por (possivelmente vários primitivos que se sobrepõem e computam a cor final
>br>Aprenda mais sobre o pipeline de gráficos do OpenGL Basics
Agora você deve perceber a um nível muito alto, nós fazemos o seguinte
1. Transformação - Transforme a geometria em espaço de tela
2. Rasterização - Rasterize os pixels(ou fragmentos)
3. Aplicando iluminação e texturização
4. Misture os fragmentos em uma única cor.
5. Shaders são códigos definidos pelo usuário usados para personalizar o pipeline
Expandimos cada uma destas seções em detalhes
>br>Transformação
Veja alguns vídeos introdutórios, por exemplo, este vídeo da Samsung dá uma visão geral das transformações
Conheça as transformações em curso em alto nível (estas são transformações de modelo, visão e projeção). Também esteja familiarizado com termos como View Frustum . Algumas matemáticas básicas vão ajudar a saber o que está acontecendo no Diário de um Programador Gráfico. Opcionalmente, se você gosta de saber mais detalhes e a Programação de Matemática GLSL/Vertex Transformations
Agora comece a ler artigos
Uma introdução ao OpenGL moderno. Índice
Página sobre Ntu
Página sobre Ntu
OpenGL
O Pipeline Gráficos Básicos
Artigos semelhantes
- Quais são as diferenças entre OpenGL moderno e antigo? O OpenGL moderno é difícil, então devo começar com o antigo OpenGL?
- Devo aprender DirectX ou OpenGL?
- Existe algum motor de jogo ou motor gráfico popular que utilize Vulkan em vez de DirectX ou OpenGL? O que o Vulkan traz para a mesa?
- Qual é a diferença entre OpenGL e DirectX?