stringtranslate.com

Rasterización

Imagen gráfica rasterizada

En infografía , rasterización ( inglés británico ) o rasterización ( inglés americano ) es la tarea de tomar una imagen descrita en un formato de gráficos vectoriales (formas) y convertirla en una imagen rasterizada (una serie de píxeles , puntos o líneas, que, cuando se muestran juntos, crean la imagen que se representó mediante formas). [1] [2] La imagen rasterizada puede luego mostrarse en una pantalla de computadora , pantalla de video o impresora , o almacenarse en un formato de archivo de mapa de bits . La rasterización puede referirse a la técnica de dibujar modelos 3D , o a la conversión de primitivas de representación 2D , como polígonos y segmentos de línea , a un formato rasterizado.

Etimología

El término "rasterización" proviene del alemán Raster  'cuadrícula, patrón, esquema' y del latín rāstrum  'rascador, rastrillo'. [3] [4]

Imágenes 2D

Primitivas de línea

El algoritmo de líneas de Bresenham es un ejemplo de un algoritmo utilizado para rasterizar líneas.

Primitivas circulares

Algoritmos como el algoritmo del círculo de punto medio se utilizan para representar círculos en un lienzo pixelado.

Imágenes en 3D

La rasterización es una de las técnicas típicas de renderizado de modelos 3D. En comparación con otras técnicas de renderizado como el trazado de rayos , la rasterización es extremadamente rápida y, por lo tanto, se utiliza en la mayoría de los motores 3D en tiempo real. Sin embargo, la rasterización es simplemente el proceso de calcular el mapeo desde la geometría de la escena hasta los píxeles y no prescribe una forma particular de calcular el color de esos píxeles. El color específico de cada píxel lo asigna un sombreador de píxeles (que en las GPU modernas es completamente programable ). El sombreado puede tener en cuenta efectos físicos como la posición de la luz, sus aproximaciones o una intención puramente artística.

El proceso de rasterizar modelos 3D en un plano 2D para mostrarlos en la pantalla de una computadora (" espacio de pantalla ") a menudo se lleva a cabo mediante hardware de función fija (no programable) dentro del proceso de gráficos . Esto se debe a que no hay motivación para modificar las técnicas de rasterización utilizadas en el momento del renderizado [5] y un sistema de propósito especial permite una alta eficiencia.

Rasterización de triángulos

Rasterizar triángulos usando la regla superior izquierda

Los polígonos son una representación común de modelos digitales 3D. Antes de la rasterización, los polígonos individuales normalmente se dividen en triángulos; por lo tanto, un problema típico a resolver en la rasterización 3D es la rasterización de un triángulo. Las propiedades que generalmente se requieren de los algoritmos de rasterización de triángulos son la rasterización de dos triángulos adyacentes (es decir, aquellos que comparten un borde).

  1. no deja agujeros (píxeles no rasterizados) entre los triángulos, de modo que el área rasterizada se llena completamente (al igual que la superficie de los triángulos adyacentes). Y
  2. ningún píxel se rasteriza más de una vez, es decir, los triángulos rasterizados no se superponen. Esto es para garantizar que el resultado no dependa del orden en que se rasterizan los triángulos. Sobredibujar píxeles también puede significar desperdiciar potencia informática en píxeles que se sobrescribirían.

Esto lleva a establecer reglas de rasterización para garantizar las condiciones anteriores. Un conjunto de tales reglas se llama regla superior izquierda , que establece que un píxel se rasteriza si y sólo si

  1. su centro se encuentra completamente dentro del triángulo. O
  2. su centro se encuentra exactamente en el borde del triángulo (o en múltiples bordes en el caso de esquinas) que es (o, en el caso de esquinas, todas son) el borde superior o el izquierdo .

Un borde superior es un borde que es exactamente horizontal y se encuentra sobre otros bordes, y un borde izquierdo es un borde no horizontal que está en el lado izquierdo del triángulo.

Esta regla se implementa, por ejemplo, mediante Direct3D [6] y muchas implementaciones de OpenGL (aunque la especificación no la define y solo requiere una regla consistente [7] ).

Calidad

Precisión de píxeles (izquierda) frente a precisión de subpíxeles (centro) frente a suavizado (derecha)

La calidad de la rasterización se puede mejorar mediante antialiasing , que crea bordes "suaves". La precisión de subpíxeles es un método que tiene en cuenta posiciones en una escala más fina que la cuadrícula de píxeles y puede producir resultados diferentes incluso si los puntos finales de una primitiva caen en las mismas coordenadas de píxeles, lo que produce animaciones de movimiento más suaves. El hardware simple o antiguo, como la PlayStation 1 , carecía de precisión de subpíxeles en la rasterización 3D. [8]

Ver también

Referencias

  1. ^ Michael F. Worboys (30 de octubre de 1995). SIG: una perspectiva de la informática. Prensa CRC. págs. 232–. ISBN 978-0-7484-0065-2.
  2. ^ Kang-Tsung Chang (27 de agosto de 2007). Programación de ArcObjects con VBA: un enfoque orientado a tareas, segunda edición. Prensa CRC. págs.91–. ISBN 978-1-4200-0918-7.
  3. ^ Harper, Douglas. "trama". Diccionario de etimología en línea .
  4. ^ rastro. Charlton T. Lewis y Charles Short. Un diccionario latino sobre el proyecto Perseo .
  5. ^ "Rasterización: una implementación práctica". www.scratchapixel.com . Consultado el 6 de octubre de 2023 .
  6. ^ "Reglas de rasterización (Direct3D 9)". Documentos de Microsoft . Consultado el 19 de abril de 2020 .
  7. ^ OpenGL 4.6 (PDF) . pag. 478.
  8. ^ "Problemas de rasterización de PlayStation". Libretro . 4 de octubre de 2016 . Consultado el 19 de abril de 2020 .

enlaces externos