Universidad Sim´n Bol´ o ıvar Departamento de Computaci´n y Tecnolog´ de Infomaci´n o ıa o Computaci´n Gr´fica II o a

Quiz I Radiosity, Monte Carlo vs Instant Radiosity

Daniela A. Torres Far´ 04-37654 ıa daniela@ldc.usb.ve

Valle de Sartenejas, 1 de Marzo de 2010

1

A efectos pr´cticos si el algoritmo se detiene despu´s de un n´mero finito de pasos se llega a e u a una aproximaci´n al valor de x de la soluci´n del sistema.1.1. M´todo Estoc´stico de Relajaci´n e a o Utiliza el m´todo de integraci´n de monte carlo para estimar iterativamente los coeficientes del e o sistema (ρi en la f´rmula (1)). 1. El objetivo b´sico de los m´todos de relajaci´n (Como los presentados o a e o en problemas de C´lculo Num´rico) es la de aproximar la soluci´n del sistema de ecuaciones lineales a e o de manera iterativa. el lado derecho indica la suma de la cantidad de energ´ emitida por un parche agregado a la sumatoria desde 1 hasta el n´mero de parches ıa u de los factores de forma correspondiente a la cantidad emitida por el parche parche j al parche i.1. La sucesi´n se construye descomponiendo o o o la matriz del sistema de ecuaciones en la suma de una matriz diagonal. que en este caso es un parche de la escena. e Existen dos clases del M´todo de Monte Carlo.j Pj (1) Donde el lado izquierdo de la ecuaci´n representa es la cantidad de energ´ (radiosidad) recibida o ıa por un elemento. esto o o a se hace mediante el calculo de la componente difusa del rayo que golpea en esa muestra del parche (Como conocimiento general debemos tener que Monte Carlo solo trabaja con reflecciones difusas. Algoritmo vinculado a cada M´todo e M´todo de Monte Carlo e Monte Carlo es usado para calcular la iluminaci´n global de una escena resolviendo la ecuaci´n o o de radiosidad. El algoritmo mas usado para resolver el problema de calcular los coeficientes de la ecuaci´n (1) o usando el m´todo de monte carlo es el llamado algoritmo de Jacobi. formulando la soluci´n como un par´mentro de una variable o a aleatoria cuidadosamente elegida. En primer lugar la ecuaci´n a resolver por el m´todo de monte carlo es la siguiente: o e M P i = Wi + ρi j=1 Fi.1. esta sumatoria tiene un coeficientes el cual debe se calculado por el m´todo de Monte Carlo. Si los elementos de la diagonal de la matriz son distintos de 0 la definici´n del m´todo de Jacobi viene dada por: o e x(k+1) = D−1 [b − (L + U )x(k) ] Donde k representa la iteraci´n actual. no 2 . una matriz triangular superior y una matriz triangular inferior.1. e 1. Mientras el n´mero ıa u de pasos sea menor al m´ximo (el m´ximo es definido dependiendo de lo que se quiere) se eligen el a a n´mero inicial de muestras del parche a examinar se genera un n´mero aleatorio el cual funciona u u para verificar la convergencia del algoritmo (el numero esta entre 0 y 1) y para cada parche en la escena se calcula el n´mero de muestras a tomar y para cada una de estas muestras se calcula la u reflecci´n o absorci´n de la luz asigando a los par´metros del parche la cantidad correspondiente. El l´ o ımite de esta sucesi´n es precisamente la soluci´n o o del sistema. realizando una simulaci´n probabilistica de los caminos que recorren los fotones que o parten desde la fuente de luz en la escena.2. Algoritmo: (2) Para comenzar se inicializan los parches de manera tal de que todos tengan una radiosidad inicial y no tengan valores asociados a la cantidad de energ´ que irradian o absorben. o 1. cuya base consiste en construir e una sucesi´n convergente definida iterativamente.

obtener un valor para la componente especular en ciertos puntos.2. gracias al bajo costo en c´culos que ofrece el m´todo se ha logrado realizar a e una variaci´n de este que permite utilizar radiosity como m´todo de c´lculo de iluminaci´n global a o e a o tiempo real. 1. Finalmente.luego de realizar estos calculos. las cuales. La cantidad de luz que reflecta o absorbe un objeto va a depender de las propiedades e del material. Para empezar se coloca la intensidad de todos los pixels en 0. por cada parche se actualiza la variaci´n total de o energ´ en la escena usando como par´metros la variaci´n de la energ´ (promedio de la energia obtenida ıa a o ıa de cada muestra del parche). un tope relacionado con el factor de forma real y B es el error. logrando una simulaci´n m´s real de lo que es o a la iluminaci´n global. adem´s de a esto.est es un c´lculo estimado del factor de forma que a da. donde Fij. o 1. 2 3 . Refinamiento hereditario En esta versi´n del m´todo se hace un refinamiento por herencia de la versi´n explicada anterioro e o mente. haciendo que la ı a energ´ sea transportada solo en ciertos puntos desde el punto donde se lanza (j) hasta el punto donde ıa llega (i). A lo largo del tiempo.que inicialmente es 0. Se evalua la ecuaci´n (1) para ese punto del parche para posteriormente calcular ese valor para o todo el parche haciendo una especie de promedio. 1. cumpliendo que Bj Fij. luego. y agregandole el valor de la energ´ calculada para ıa el parche i en cada iteraci´n. que incluye la reflecci´n de la luz en las superficies afectando a los dem´s objetos o o a que est´n cerca.1. posteriormente se lanzan en todas direcciones y cuando estas choque con un objeto o superficie se colocan sobre ella estableciendo una luz puntual en ese lugar.est < B . Para cada luz puntual colocada en la escena se debe calcular la cantidad de energ´ que transmite ıa a los dem´s pixels de la escena y acumular el valor obtenido de cada luz puntual para as´ poder obtener a ı el valor de la energ´ total de la escena ıa Las diferentes luces puntuales dentro de la escena pasan a representar los parches de la idea fundamental de lo que es radiosity. el n´mero total de part´ u ıculas a lanzar dentro de la escena. lo cual quiere decir que cada parche va a estar dentro de una estructura jer´rquica de herencia a dependiendo de la luz que le llega logrando as´ quitar cualquier posible error de c´lculo. se calcula.especulares) considerando el angulo del rayo incidente contra la normal en ese punto del parche dando como resultado que la intesidad de la luz reflejada ser´ directamente proporcional al coseno de ese a angulo.2. Luego de realizar todo los rebotes posicionar las luces puntuales se procede a realizar el render de la escena desde cada uno de los puntos tomando como unica fuente de ´ luz la luz puntual resultante del rebote del rayo inicial.3. de manera aproximada. Este m´todo permite disminuir el n´mero de c´lculos que hay que e u a realizar para obtener el valor de las componentes de la luz en cada punto de la escena y.1. en nuestro caso ser´n luces a puntuales. M´todo Instant Radiosity e Algoritmo: Instant Radiosity es un m´todo de iluminaci´n global el cual consiste en realizar una aproximaci´n e o o de la iluminaci´n indirecta mediante el uso de part´ o ıculas.

Los c´lculos incrementan miena tras mas objetos interactuen en la escena.los u a cuales son dificiles de entender y de optimizar. lo cual implica que el buffer debe ser lo suficientemente grande para almacenar un gran n´mero de im´genes a componer para u a mejorar el producto final. adem´s es conceptuala mente f´cil de ejecutar y mejorar en a hardware 3D. a Permite la utilizaci´n del hardware en o OpenGL para disminuir el tiempo de render. No puede ser usado en render de tiempo real ya que requiere demasiados c´lculos. Puede simular cualquier fen´meno ´ptico. La radiaci´n proveniente de las diferentes o texturas y materiales es calculada en el instante Desventajas Requiere un alto n´mero de c´culos. La o calidad de la imagen final depende mucho del hardware en el cual se esta corriendo el algoritmo. No permite el calculo de la componente especular en las superficies. Ventajas y Desventajas. esto a se debe a que funciona solamente en el espacio de la imagen a renderizar. Es bastante preciso y no es dependiente directo del hardware de la m´quina. No funciona muy bien en escenas iluminadas principalmente por iluminaci´n indirecta ya o que se puede requerir de muchos marcos de escena para que las part´ ıculas lleguen a donde tiene que llegar M´todo e Monte Carlo Instant Radiosity 4 . Permite ser optimizado para poder implementarlo en render de tiempo real lo cual amplia el uso de radiosity en video juegos. a No es muy preciso. genera im´genes a muy buenas pero no debe ser utilizado si se requiere mucha precisi´n. Realiza una excelente o o aproximaci´n para el c´lculo de la como a ponente difusa de la luz en la escena.2. No exige altos requisitos de memoria para realizar los c´lucos. Monte Carlo vs Instant Radiosity Ventajas Permite una iluminaci´n global muy reo al en las escenas. Permite ser optimizado para poder calcular la componente especular.