Operación básica de OpenGL
En el diagrama siguiente se muestra cómo OpenGL procesa los datos. Como se muestra, los comandos entran desde la izquierda y continúan a través de una canalización de procesamiento. Algunos comandos especifican objetos geométricos que se van a dibujar y otros controlan cómo se controlan los objetos durante varias fases de procesamiento.
Las fases de procesamiento de la operación básica de OpenGL son las siguientes:
Mostrar lista En lugar de que todos los comandos continúen inmediatamente a través de la canalización, puede optar por acumular algunos de ellos en una lista de visualización para su procesamiento más adelante.
Evaluador La fase de evaluación del procesamiento proporciona una manera eficaz de aproximar la geometría de curvas y superficies mediante la evaluación de comandos polinómicos de valores de entrada.
Operaciones por vértice y ensamblado primitivo OpenGL procesa puntos primitivos geométricos, segmentos de línea y polígonos de los cuales se describen mediante vértices. Los vértices se transforman y iluminan, y los primitivos se recortan en la ventanilla como preparación para la rasterización.
Rasterización La fase de rasterización genera una serie de direcciones de búfer de fotogramas y valores asociados mediante una descripción bidimensional de un punto, un segmento de línea o un polígono. Cada fragmento que se genera se introduce en la última fase, operaciones por fragmento.
Operaciones por fragmento Estas son las operaciones finales realizadas en los datos antes de almacenarse como píxeles en el búfer de fotogramas.
Las operaciones por fragmento incluyen actualizaciones condicionales del búfer de fotogramas en función de los valores z entrantes y almacenados previamente (para el almacenamiento en búfer z) y la combinación de colores de píxeles entrantes con colores almacenados, así como enmascaramiento y otras operaciones lógicas en valores de píxeles.
Los datos pueden ser introducidos en forma de píxeles en lugar de vértices. Los datos en forma de píxeles, como pueden describir una imagen para su uso en la asignación de texturas, omite la primera fase del procesamiento descrito anteriormente y, en su lugar, se procesa como píxeles, en la fase de operaciones de píxeles. Operaciones de píxeles siguientes, los datos de píxeles son:
- Se almacena como memoria de textura, para su uso en la fase de rasterización.
- Rasterizado, con los fragmentos resultantes combinados en el búfer de fotogramas como si se generaran a partir de datos geométricos.