stringtranslate.com

Mapeo de reflexión

Un ejemplo de mapeo de reflexión

En gráficos por computadora , el mapeo de reflexión o mapeo de entorno [1] [2] [3] es una técnica de iluminación basada en imágenes eficiente para aproximar la apariencia de una superficie reflectante por medio de una textura precalculada . La textura se utiliza para almacenar la imagen del entorno distante que rodea al objeto renderizado.

Se han empleado varias formas de almacenar el entorno circundante. La primera técnica fue el mapeo esférico , en el que una única textura contiene la imagen del entorno tal como se refleja en un espejo esférico . Ha sido superada casi por completo por el mapeo cúbico , en el que el entorno se proyecta sobre las seis caras de un cubo y se almacena como seis texturas cuadradas o se despliega en seis regiones cuadradas de una única textura. Otras proyecciones que tienen algunas propiedades matemáticas o computacionales superiores incluyen el mapeo paraboloide , el mapeo piramidal , el mapeo octaédrico y el mapeo HEALPix .

El mapeo de reflexión es uno de los varios enfoques para la representación de la reflexión , junto con, por ejemplo, las reflexiones del espacio de la pantalla o el trazado de rayos , que calcula la reflexión exacta trazando un rayo de luz y siguiendo su trayectoria óptica . El color de reflexión utilizado en el cálculo del sombreado en un píxel se determina calculando el vector de reflexión en el punto del objeto y asignándolo al texel en el mapa del entorno. Esta técnica a menudo produce resultados que son superficialmente similares a los generados por el trazado de rayos, pero es menos costosa computacionalmente ya que el valor de radiancia de la reflexión proviene del cálculo de los ángulos de incidencia y reflexión, seguido de una búsqueda de textura, en lugar de seguir trazando un rayo contra la geometría de la escena y calculando la radiancia del rayo, simplificando la carga de trabajo de la GPU .

Sin embargo, en la mayoría de las circunstancias, un reflejo mapeado es solo una aproximación del reflejo real. El mapeo del entorno se basa en dos supuestos que rara vez se cumplen:

  1. Toda la radiación que incide sobre el objeto que se está sombreando proviene de una distancia infinita. Cuando este no es el caso, el reflejo de la geometría cercana aparece en el lugar equivocado sobre el objeto reflejado. Cuando este es el caso, no se ve paralaje en el reflejo.
  2. El objeto que se está sombreando es convexo , de modo que no contiene interreflexiones internas. Cuando no es así, el objeto no aparece en la reflexión, solo aparece el entorno.

El mapeo del entorno es generalmente el método más rápido para renderizar una superficie reflectante. Para aumentar aún más la velocidad de renderización, el renderizador puede calcular la posición del rayo reflejado en cada vértice. Luego, la posición se interpola en los polígonos a los que está unido el vértice. Esto elimina la necesidad de volver a calcular la dirección de reflexión de cada píxel.

Si se utiliza el mapeo normal , cada polígono tiene muchas caras normales (la dirección a la que se enfrenta un punto determinado de un polígono), que se pueden utilizar en conjunto con un mapa de entorno para producir un reflejo más realista. En este caso, el ángulo de reflexión en un punto determinado de un polígono tendrá en cuenta el mapa normal. Esta técnica se utiliza para hacer que una superficie que de otro modo sería plana parezca texturizada, por ejemplo, metal corrugado o aluminio cepillado .

Tipos

Mapeo de esferas

El mapeo esférico representa la esfera de iluminación incidente como si se la viera en el reflejo de una esfera reflectante a través de una cámara ortográfica . La imagen de textura se puede crear aproximándose a esta configuración ideal, o utilizando una lente ojo de pez o mediante la renderización previa de una escena con un mapeo esférico.

El mapeo esférico sufre limitaciones que restan realismo a las representaciones resultantes. Debido a que los mapas esféricos se almacenan como proyecciones azimutales de los entornos que representan, se puede ver un punto abrupto de singularidad (un efecto de " agujero negro ") en el reflejo del objeto, donde los colores de los texeles en el borde del mapa o cerca de él se distorsionan debido a una resolución inadecuada para representar los puntos con precisión. El mapeo esférico también desperdicia píxeles que están en el cuadrado pero no en la esfera.

Los artefactos del mapeo esférico son tan severos que sólo es efectivo para puntos de vista cercanos al de la cámara ortográfica virtual.

Mapeo cúbico

Diagrama que muestra una reflexión aparente proporcionada por la reflexión mapeada en cubos. El mapa se proyecta en realidad sobre la superficie desde el punto de vista del observador. Los puntos destacados que en el trazado de rayos se obtendrían trazando el rayo y determinando el ángulo formado con la normal se pueden "falsificar" si se pintan manualmente en el campo de textura (o si ya aparecen allí, dependiendo de cómo se haya obtenido el mapa de textura), desde donde se proyectarán sobre el objeto mapeado junto con el resto de los detalles de la textura.
Una imagen de mapa de reflexión temprana, que representa una habitación que se ha proyectado sobre un plano 2D.
Una imagen utilizada en los primeros mapas de reflexión, creados en 1976 por James F. Blinn
Ejemplo de un modelo tridimensional que utiliza reflexión en mapas cúbicos

Los mapas de cubos y otros mapas de poliedros solucionan la grave distorsión de los mapas de esferas. Si los mapas de cubos se crean y filtran correctamente, no tienen costuras visibles y se pueden utilizar independientemente del punto de vista de la cámara, a menudo virtual, que captura el mapa. Los mapas de cubos y otros mapas de poliedros han reemplazado desde entonces a los mapas de esferas en la mayoría de las aplicaciones de gráficos por ordenador, con la excepción de la adquisición de iluminación basada en imágenes . La iluminación basada en imágenes se puede realizar con mapas de cubos con corrección de paralaje. [4]

En general, el mapeo cúbico utiliza el mismo skybox que se utiliza en las representaciones al aire libre. La reflexión en el mapeo cúbico se realiza determinando el vector en el que se está viendo el objeto. Este rayo de la cámara se refleja sobre la normal de la superficie en el lugar donde el vector de la cámara interseca el objeto. Esto da como resultado el rayo reflejado que luego se pasa al mapeo cúbico para obtener el texel que proporciona el valor de radiancia utilizado en el cálculo de la iluminación. Esto crea el efecto de que el objeto es reflectante.

Mapeo HEALPix

El mapeo del entorno HEALPix es similar a otros mapeos de poliedros, pero puede ser jerárquico, lo que proporciona un marco unificado para generar poliedros que se aproximan mejor a la esfera. Esto permite una menor distorsión a costa de un mayor cálculo. [5]

Historia

En 1974, Edwin Catmull creó un algoritmo para "representar imágenes de parches de superficie bivariados" [6] [7] que trabajaba directamente con su definición matemática. Bui-Tuong Phong investigó y documentó mejoras adicionales en 1975 y, más tarde, James Blinn y Martin Newell , quienes desarrollaron el mapeo del entorno en 1976; estos desarrollos que refinaron los algoritmos originales de Catmull los llevaron a concluir que "estas generalizaciones dan como resultado técnicas mejoradas para generar patrones y texturas". [6] [8] [9]

Gene Miller experimentó con el mapeo del entorno esférico en 1982 en MAGI .

Wolfgang Heidrich introdujo el mapeo paraboloide en 1998. [10]

Emil Praun introdujo el mapeo octaédrico en 2003. [11]

Mauro Steigleder introdujo el mapeo piramidal en 2005. [12]

Tien-Tsin Wong, et al. introdujeron el mapeo HEALPix existente para renderizado en 2006. [5]

Véase también

Referencias

  1. ^ "Educación Superior | Pearson" (PDF) .
  2. ^ http://web.cse.ohio-state.edu/~whmin/courses/cse5542-2013-spring/17-env.pdf [ URL básica PDF ]
  3. ^ http://www.ics.uci.edu/~majumder/VC/classes/BEmap.pdf [ URL básica PDF ]
  4. ^ "Enfoques de iluminación basados ​​en imágenes y mapas cúbicos con corrección de paralaje". 29 de septiembre de 2012.
  5. ^ ab Tien-Tsin Wong, Liang Wan, Chi-Sing Leung y Ping-Man Lam. Mapeo del entorno en tiempo real con mapa cuádruple esférico de ángulo sólido igual, Shader X4: iluminación y renderizado, Charles River Media, 2006.
  6. ^ ab Blinn, James F.; Newell, Martin E. (octubre de 1976). "Textura y reflexión en imágenes generadas por ordenador". Comunicaciones de la ACM . 19 (10): 542–547. doi :10.1145/360349.360353. ISSN  0001-0782.
  7. ^ Catmull, EA Representación por ordenador de superficies curvas. Proc. Conf. on Comptr. Graphics, Pattern Recognition, and Data Structure, mayo de 1975, págs. 11-17 (IEEE Cat. No. 75CH0981-1C).
  8. ^ "Gráficos por computadora".
  9. ^ "Historia del mapeo de reflexión".
  10. ^ Heidrich, W. y H.-P. Seidel. "Mapas de entorno independientes de la vista". Taller Eurographics sobre hardware gráfico 1998, págs. 39-45.
  11. ^ Emil Praun y Hugues Hoppe. "Parametrización esférica y remallado". ACM Transactions on Graphics, 22(3):340–349, 2003.
  12. ^ Mauro Steigleder. "Transporte de luz con lápiz". Tesis presentada en la Universidad de Waterloo, 2005.

Enlaces externos