Computação Gráfica II
a) Descreva as etapas do pipeline de visualização OpenGL.
O núcleo do OpenGL é conhecido como “rendering pipeline” ou dutos de renderização. É importante notar que o OpenGL lida tanto com o desenhos na forma vetorial, definidos por vértices, como com mapas de bits, definidos pixel-a-pixel. Os principais elementos desse duto estão descritos abaixo:
Listas de exibição (Display lists): Todos os dados, sejam de vértices pertencentes a geometrias ou pixels, podem ser salvos lista de exibição para uso atual ou posterior;
Avaliadores (evaluators): Todas as primitivas geométricas, no OpenGL são descrita por vértices. Curvas e superfícies paramétricas podem ser descritas por fórmulas - usadas na construção dos vértices. Quem faz essa avaliação são os avaliadores.
Operações pré-vértices: Para os dados de vértices, as operações pré-vértice convertem os vértices em primitivas de desenho. Nessa etapa, cada vértice é convertido em matrizes 4×4, então cálculos são realizados para que sejam convertidos do espaço 3D para as coordenadas de tela. Essa etapa ainda realiza operações de cálculos de textura, iluminação, materiais, etc. de acordo com quais estados tenham sido habilitados;
Montagem de primitivas (primitive assembly): A fase de montagem de primitivas preocupa-se com a eliminação das partes da geometria que caiam fora do plano. Essa fase também aplica os cálculos de perspectiva, fazendo os objetos distantes parecerem menores em relação a objetos próximos. Se cálculos de abate (culling) estiverem ativos, partes dos objetos podem ser desprezadas durante essa fase. É aqui também que se decide se um polígono deve ser desenhado através de pontos ou linhas;
Operações com pixels: Enquanto os dados geométricos seguem pelo duto de renderização, os mapas de pixels passam por diferentes tipos de transformação. Primeiramente, os pixels são descompactados de acordo com o seu número de componentes, então eles têm