Mapeo de reflexión - Reflection mapping

Un ejemplo de mapeo de reflexión

En los gráficos por computadora , el mapeo del entorno o el mapeo de reflexión 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 de esferas , en el que una única 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 en 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 del octaedro y el mapeo HEALPix .

El mapeo de reflexión es uno de varios enfoques para la representación de la reflexión , junto con, por ejemplo , los reflejos 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 de sombreado en un píxel se determina calculando el vector de reflexión en el punto del objeto y mapeándolo con el 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 costoso 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 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 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. Todo el 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 incorrecto del 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 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 de renderizar 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 se adjunta el vértice. Esto elimina la necesidad de volver a calcular la dirección de reflexión de cada píxel.

Si se usa el mapeo normal , cada polígono tiene muchas caras normales (la dirección en la que se enfrenta un punto dado en un polígono), que se pueden usar en conjunto con un mapa de entorno para producir una reflexión más realista. En este caso, el ángulo de reflexión en un punto dado de un polígono tomará en consideración el mapa normal. Esta técnica se utiliza para hacer que una superficie que de otro modo sería plana parece 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 se viera 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, o utilizando una lente de ojo de pez o mediante la reproducción previa de 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 la reflexión sobre el objeto donde los colores del 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 severos que solo 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 la reflexión en mapa de 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 realizado 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.
Ejemplo de un modelo tridimensional que utiliza la reflexión mapeada en cubos

El mapeo de cubos y otros mapeos de poliedros abordan la severa distorsión de los mapas de esferas. Si los mapas de cubos se hacen y filtran correctamente, no tienen costuras visibles y se pueden usar 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.

Generalmente, el mapeo de cubos usa el mismo skybox que se usa en las representaciones al aire libre. La reflexión en el mapa de cubos se realiza determinando el vector en el que se está viendo el objeto. Este rayo de cámara se refleja sobre la superficie normal de donde el vector de la cámara se cruza con 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 la iluminación. Esto crea el efecto de que el objeto es reflectante.

Mapeo HEALPix

El mapeo del entorno HEALPix es similar a los 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.

Historia

El trabajo precursor en el mapeo de texturas había sido establecido por Edwin Catmull , con refinamientos para superficies curvas por James Blinn , en 1974. Blinn continuó refinando aún más su trabajo, desarrollando el mapeo ambiental en 1976.

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

Wolfgang Heidrich introdujo el mapeo de paraboloides en 1998.

Emil Praun introdujo el mapeo de octaedros en 2003.

Mauro Steigleder introdujo Pyramid Mapping en 2005.

Tien-Tsin Wong y col. introdujo el mapeo HEALPix existente para renderizar en 2006.

Ver también

Referencias

enlaces externos