Rasterización

Las aplicaciones en tiempo real deben responder inmediatamente a lo que el usuario haga y por ende producir al menos 25 cuadros por segundo para conseguir una animación suave.

Comparado con otras técnicas de renderizado 3D como Ray tracing, la rasterización es extremadamente rápida.

A un nivel muy básico, los rasterizadores solo toman una cantidad de vértices, los transforman en puntos bidimensionales correspondientes a un monitor y rellenan los triángulos bidimensionales transformados de forma apropiada.

Si el punto queda fuera de la esquina, este se elimina.

El primer problema a considerar es si dibujar o no un determinado píxel.

Cada vez que un píxel es dibujado, este actualiza el z buffer con su valor de profundidad.

Antes de que el color final del píxel sea decidido, un cálculo de iluminación debe ser computado para sombrear a los píxeles basados en alguna luz que puede estar presente en la escena.

En la vida real, la luz solar está muy cerca de ser una luz direccional, al estar el sol tan lejos que los rayos de él parecen estar paralelos a observadores ubicados en la Tierra y la atenuación es despreciable.

Todos los algoritmos de sombreado deben tomar en cuenta la distancia desde la luz y el vector normal del objeto sombreado con respecto a la dirección incidente de la luz.

Unas cuantas técnicas de aceleración se desarrollaron a través del tiempo para remover objetos no visibles.

Ya que la mayoría de los objetos 3D son completamente cerrados, los polígonos no enfrentados al observador están siempre bloqueados por polígonos que sí lo están, excepto cuando el observador está dentro del objeto.

Una vez que un polígono se transformó a un espacio en la pantalla, su winding puede ser verificado y si está en la dirección opuesta, no es dibujado.

Porsupuesto, backface culling no puede ser usado con volúmenes abiertos o degenerados.

Las texturas son creadas a resoluciones específicas, pero ya que la superficie en donde están aplicadas puede estar a cualquier distancia del observador, estas pueden mostrarse en tamaños arbitrarios en la imagen final.

Alguna técnica de filtrado debe ser aplicada para lograr imágenes claras a cualquier distancia.

Hay varios métodos, con diferentes relaciones entre calidad de imagen y complejidad computacional.

Sin embargo, un observador en una escena solo podrá discernir detalles de objetos cercanos.

Mientras que los programadores gráficos tempranamente se habían basado más en lenguaje ensamblador codificado a mano para que sus programas funcionaran más rápido, la mayoría de los programas modernos están escritos para funcionar a través de una de las existentes APIs gráficas, las cuales manejan a la GPU.

La tendencia está apuntada a la completa programabilidad de la pipeline (tubería, conducto) gráfica.

También puede ser otro bitmap de un dispositivo cuya salida es enviada a la entrada del RIP.