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 ambiental [1] [2] [3] es una técnica eficiente de iluminación basada en imágenes para aproximar la apariencia de una superficie reflectante mediante una textura precalculada . La textura se utiliza para almacenar la imagen del entorno distante que rodea el objeto renderizado.

Se han empleado varias formas de almacenar el entorno circundante. La primera técnica fue el mapeo de esferas , en el que una sola textura contiene la imagen del entorno reflejada en un espejo esférico . Ha sido superado casi por completo por el mapeo de cubos , 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 sola textura. Otras proyecciones que tienen algunas propiedades matemáticas o computacionales superiores incluyen el mapeo paraboloide , el mapeo piramidal , el mapeo octaedro y el mapeo HEALPix .

El mapeo de reflejos es uno de varios enfoques para la representación de reflejos , junto con, por ejemplo, los reflejos del espacio de la pantalla o el trazado de rayos , que calcula el reflejo exacto 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 desde el punto de vista computacional 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 un trazado de un rayo. contra la geometría de la escena y calculando el resplandor del rayo, simplificando la carga de trabajo de la GPU .

Sin embargo, en la mayoría de circunstancias una reflexión mapeada es sólo una aproximación de la reflexión real. El mapeo del entorno se basa en dos supuestos que rara vez se cumplen:

  1. Todo resplandor 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 del objeto reflejado. Cuando este es el caso, no se ve ningún paralaje en el reflejo.
  2. El objeto que se sombrea es convexo , de modo que no contiene autointerreflexiones. Cuando este no es el caso el objeto no aparece en el reflejo; sólo el medio ambiente lo hace.

El mapeo del entorno es generalmente el método más rápido para representar una superficie reflectante. Para aumentar aún más la velocidad de renderizado, el renderizador puede calcular la posición del rayo reflejado en cada vértice. Luego, la posición se interpola entre 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 hacia la que mira un punto determinado en un polígono), que se pueden usar en conjunto con un mapa ambiental 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 plana parezca texturizada, por ejemplo, metal corrugado o aluminio cepillado .

Tipos

mapeo de esferas

El mapeo de esferas representa la esfera de iluminación incidente como si fuera vista en el reflejo de una esfera reflectante a través de una cámara ortográfica . La imagen de textura se puede crear aproximando esta configuración ideal, usando una lente ojo de pez o renderizando previamente una escena con un mapeo esférico.

El mapeo esférico adolece de 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, un punto abrupto de singularidad (un efecto de " agujero negro ") es visible en el reflejo del objeto donde los colores texel en o cerca del borde del mapa están distorsionados debido a 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 graves que sólo es efectivo para puntos de vista cercanos al de la cámara ortográfica virtual.

mapeo de cubos

Un diagrama que representa una reflexión aparente proporcionada por una reflexión mapeada en cubos. En realidad, el mapa se proyecta sobre la superficie desde el punto de vista del observador. Los reflejos que en el trazado de rayos se proporcionarían al trazar el rayo y determinar el ángulo formado con la normal, se pueden "modificar" si se pintan manualmente en el campo de textura (o si ya aparecen allí dependiendo de cómo se obtuvo el mapa de textura). ), desde donde se proyectarán sobre el objeto mapeado junto con el resto del detalle de la textura.
Una imagen de mapa de reflexión temprana, que representa una habitación que se ha proyectado en un plano 2D.
Una imagen utilizada en el mapeo de reflexión temprana, creada en 1976 por James F. Blinn.
Ejemplo de un modelo tridimensional que utiliza reflexión en mapas de cubos

El mapeo de cubos y otros mapeos de poliedros abordan la severa distorsión de los mapas de esferas. Si los mapas cúbicos se crean y filtran correctamente, no tienen costuras visibles y pueden usarse independientemente del punto de vista de la cámara, a menudo virtual, que adquiere el mapa. Desde entonces, los mapas de cubos y otros poliedros han reemplazado a los mapas de esferas en la mayoría de las aplicaciones de gráficos por computadora, 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]

Generalmente, el mapeo de cubos usa el mismo skybox que se usa en las representaciones al aire libre. La reflexión en mapa de cubos se realiza determinando el vector en el que se ve el objeto. Este rayo de cámara se refleja sobre la superficie normal donde el vector de la cámara cruza el objeto. Esto da como resultado el rayo reflejado que luego se pasa al mapa del cubo para obtener el texel que proporciona el valor de radiancia utilizado en el cálculo de iluminación. Esto crea el efecto de que el objeto es reflectante.

Mapeo HEALPix

El mapeo del entorno de HEALPix es similar a otros mapeos de poliedros, pero puede ser jerárquico, proporcionando así 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ó más mejoras en 1975, y más tarde James Blinn y Martin Newell , quienes desarrollaron mapas ambientales 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 de entornos esféricos en 1982 en MAGI .

Wolfgang Heidrich introdujo el mapeo de paraboloides en 1998. [10]

Emil Praun introdujo el mapeo de octaedros en 2003. [11]

Mauro Steigleder presentó el mapeo de pirámides en 2005. [12]

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

Ver 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 mapa de cubos 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 reflejo en imágenes generadas por computadora". Comunicaciones de la ACM . 19 (10): 542–547. doi :10.1145/360349.360353. ISSN  0001-0782.
  7. ^ Catmull, EA Visualización por computadora de superficies curvas. Proc. Conf. en Comptr. Gráficos, reconocimiento de patrones y estructura de datos, mayo de 1975, págs. 11-17 (IEEE Cat. No. 75CH0981-1C).
  8. ^ "Gráficos por computadora".
  9. ^ "Historia del mapeo de reflexiones".
  10. ^ Heidrich, W. y H.-P. Seidel. "Mapas de entorno independientes de la vista". Taller de Eurographics sobre hardware gráfico 1998, págs.
  11. ^ Emil Praun y Hugues Hoppe. "Parametrización y remallado esférico". Transacciones ACM sobre gráficos, 22(3):340–349, 2003.
  12. ^ Mauro Steigleder. "Transporte con luz de lápiz". Tesis presentada en la Universidad de Waterloo, 2005.

Enlaces externos