Mapeo de fotones (mapeo de fotones)

Aunque el trazado de rayos es simple, potente y fácil de implementar, muchas cosas en el mundo real no se pueden manejar bien. Por ejemplo: sangrado, cáusticos: el fenómeno de la unión de los rayos de luz.

Hasta que se propuso el mapeo de fotones en 1993, el trazado de rayos no podía resolver eficazmente estos dos problemas, mientras que el mapeo de fotones proporcionaba una buena solución a estos dos problemas. Los reflejos y las cáusticas se producen por la iluminación indirecta de superficies difusamente reflectantes. Utilizando métodos de mapeo de fotones, esta iluminación se puede estimar a partir de mapas de fotones precalculados. Extender el trazado de rayos al mapeo de fotones produce un método que puede tener en cuenta cualquier iluminación directa o indirecta. Además, el mapeo de fotones también puede manejar la situación de los medios participantes, lo que facilita la realización de cálculos paralelos. El algoritmo de iluminación global basado en el mapa de fotones se divide en dos pasos: en el primer paso, cuando se encuentra un objeto no especular, los fotones se emiten desde la fuente de luz a la escena y se guardan en un mapa de fotones, estableciendo así un mapa de fotones. En el segundo paso, se utilizan técnicas estadísticas para extraer del mapa de fotones el flujo incidente y la energía de radiación reflejada en todos los puntos de la escena. La separación completa del mapeo de fotones y la representación de escenas permite que el método de mapeo de fotones maneje escenas muy complejas, incluidos miles de parches de triángulos, geometría instanciada y objetos de procedimiento complejos.

En comparación con el método radiométrico de elementos finitos, la ventaja del mapeo de fotones es que no utiliza mallado. En una escena simple, la velocidad de la radiación puede ser muy rápida, pero una vez que la escena es compleja, la velocidad de la radiación quedará muy por detrás del mapa de fotones. Además, el seguimiento de fotones también puede manejar superficies no difusas y cáusticos, pero no la irradiancia.

En comparación con los métodos de trazado de rayos Monte Carlo, como el trazado de rayos, el trazado de rayos bidireccional, Metropolis, etc., que pueden simular todos los efectos de iluminación global con muy poca sobrecarga de memoria, la mayor ventaja del mapeo de fotones Su eficiencia es alta, pero a costa de la memoria adicional necesaria para almacenar mapas de fotones. El algoritmo de mapeo de fotones es muy rápido para la mayoría de las escenas y el efecto final es mejor que el de Monte Carlo, porque los errores causados ​​por el mapeo de fotones son en su mayoría señales de baja frecuencia que no son fáciles de notar, mientras que los de Monte Carlo suelen ser de alta frecuencia. señales de frecuencia.

Otro beneficio es que el método de mapeo de fotones no está patentado, si se considera desde una perspectiva económica. (Por supuesto, esta es la declaración divertida de Jensen) La diferencia entre el trazado de fotones y el trazado de rayos es que el trazado de rayos recolecta radiación, mientras que el trazado de fotones recolecta flujo.

Esta distinción es importante porque la interacción entre un haz de luz y una sustancia es ciertamente diferente de la interacción entre un fotón y una sustancia. Un ejemplo obvio es la refracción: el brillo de la luz cambia a medida que cambia el índice de refracción, y el seguimiento de los fotones no se ve afectado por este factor (porque se recoge el flujo de luz). Cuando los fotones chocan contra una superficie, se reflejan, se transmiten (refractan) o se absorben, y el resultado está relacionado con los parámetros de la superficie. La tecnología actual utilizada para determinar si el resultado es reflexión, refracción o absorción es la rueda rusa: básicamente una decisión aleatoria de si un fotón no es absorbido y pasa al siguiente paso de seguimiento de fotones. Qué interacciones fotón-superficie deben preservarse: Los fotones solo deben preservarse cuando chocan contra una superficie difusa o, más precisamente, no especular. Debido a que los fotones almacenados en un espejo no nos brindan ninguna información útil: la probabilidad de que un fotón provenga de la dirección del espejo es cero, la mejor manera de mapear con precisión los reflejos de las superficies límite es rastrear los rayos en la dirección de la simetría del espejo usando trazado de rayos.

Cada fotón puede almacenarse varias veces a lo largo de su ruta de transmisión, llegando incluso a ser absorbido por una superficie de difusión. Cada vez que un fotón golpea una superficie, se conservan su posición, energía del fotón y dirección de incidencia, junto con un marcador utilizado para construir la estructura de búsqueda.

Durante el paso de seguimiento de fotones, el mapa de fotones se organiza como una secuencia de fotones, pero antes de dibujar, la secuencia se reorganiza en un árbol kd equilibrado por razones de eficiencia. Generalmente se supone que la interacción de los fotones ocurre en la superficie del objeto y que el "cuerpo" del objeto no tiene ningún efecto sobre los fotones por defecto. De hecho, no es difícil extender el mapeo de fotones al cuerpo con medios intermedios. En 1998, Jensen escribió un artículo sobre imágenes fotónicas del cuerpo humano.

De hecho, los fotones pueden ser emitidos no sólo desde puntos y superficies, sino también desde objetos. Por ejemplo, una vela puede simularse mediante los fotones emitidos por un objeto con forma de llama.

Cuando un fotón pasa a través de un medio, puede ser dispersado o absorbido, dependiendo la probabilidad de la densidad del medio y de la distancia que recorre el fotón. Para medios no homogéneos, el método de mapeo de fotones también se puede resolver fácilmente utilizando el método de desplazamiento de rayos [Jensen98]. Un simple marcador de rayos divide el medio en muchos pasos pequeños, actualiza la densidad acumulada (coeficiente de desaparición integrado) en cada paso y luego decide, basándose en una probabilidad precalculada, si el fotón se dispersa o se absorbe y si se necesita un siguiente paso. El proceso de construcción de mapas de fotones se completa durante el seguimiento de fotones. Durante la fase de renderizado, un mapa de fotones es simplemente un conjunto estático de datos que se utiliza para estimar el flujo de luz y la intensidad de la luz reflejada en esos puntos de la escena.

Durante el proceso de dibujo, se buscarán continuamente los fotones más cercanos a un punto determinado, por lo que encontrar una estructura de datos adecuada para reorganizar el gráfico de fotones tiene un gran impacto en la eficiencia del algoritmo. Esta estructura de datos requiere, en primer lugar, compacidad y, en segundo lugar, la capacidad de buscar el fotón más cercano lo más rápido posible. Los árboles kd equilibrados satisfacen ambos requisitos. Hay ejemplos de comparación de árboles kd equilibrados y desequilibrados en el artículo de Jensen96a. La estimación del brillo de un determinado punto de la escena se estima utilizando la información del flujo luminoso de n fotones cerca del punto.

El método más sencillo es encontrar la esfera más pequeña alrededor del punto que pueda rodear a n fotones existentes. El flujo luminoso total de n fotones en esta esfera dividido por el área proyectada de la esfera (es decir, pi * r ^ 2) es equivalente a la iluminación, y luego multiplicado por la función BRDF, podemos obtener el punto de la escena al ojo bajo esta iluminación.

Además de los N fotones necesarios para el posicionamiento con una esfera, también existen discos, planos elípticos, etc. También se puede utilizar para reducir el alias en las intersecciones entre caras. La elección de diferentes tipos de filtros también puede solucionar algo de ruido causado por una densidad de fotones insuficiente. Generalmente se utilizan dos técnicas para dibujar la imagen final, a saber, Splatting (los fotones se difunden según el brillo y luego se difuminan, o los fotones se concentran y luego se difunden) o Final Gathering (recopilación de fotones en el espacio para cada punto de la pantalla y recolección de fotones). en el espacio para cada fotón recolectado (promedio ponderado del brillo), porque si visualiza el mapa de fotones directamente, se necesita una gran cantidad de fotones para obtener una imagen de alta calidad, pero generar una imagen más precisa mediante el trazado de rayos requiere muchos menos fotones. . El brillo de un píxel se aproxima mediante el promedio de una serie de muestras, cada una de las cuales se obtiene siguiendo la línea de visión desde el ojo hasta la escena.

El valor de brillo devuelto es igual al brillo saliente a lo largo de la línea de visión en el punto de intersección donde la línea de visión intersecta por primera vez una superficie no especular.