Hemos implementado una técnica que vimos en la web del famoso Humus. Se trata de una "imitación" de las luces volumétricas. Os explico la técnica:
En el pixerl shader:
Se traza un rayo desde la cámara hasta el vértice que estoy tratando. Entonces calculo la distancia mínima desde el punto de luz hasta esta recta. De esta forma obtengo cuanto debo "iluminar" de más este pixel. ¡Ya está! (uoh)
Pero en realidad parece un aura, más que una volumétrica. Falta el efecto de niebla para que sea más real...
Lo bueno de esta técnica es que casi te sale gratis, no tienes que renderizar después un Quad para hacer el efecto de Aura y que si te metes dentro del volumen funciona perfectamente ;)
Aquí sin la luz volumétrica:
(http://www.telefonica.net/web/haddd/volum3.jpg)
Aquí la luz volumétrica desde lejos:
(http://www.telefonica.net/web/haddd/volum1.jpg)
Aquí la luz volumétrica desde dentro:
(http://www.telefonica.net/web/haddd/volum2.jpg)
Como mooola (como siempre ;)). Un saludo!
Vicente
¿Para que fuera volumetrica del todo que habria que hacer? ¿No iluminar los vertices con normal en la misma dirección que la luz (triangulos con las caras opuestas a la luz)? Me refiero a si deberian salir esos barrotes oscuros y la luz pasando entre ellos.
Buen trabajo. :)
La verdad es que el efecto mola mogollón! (ole)
queda muy chulo, y explicado así parece simplísimo :).
Queda bueno ... (ole)
Este proceso es lineal verdad?
Como se hace con las transparencias?, supongo que las transparencias son invisibles a este termino de iluminacion ...
Saludos.
sí, es lineal.
Y lo de las transparencias no se a que te refieres :blink:
Citar
queda muy chulo, y explicado así parece simplísimo
Pues sí, y lo cierto es que tardamos muy poco tiempo en implementarlo. En 1h ya teníamos integrado en el motor este efecto. (ole)
Cita de: "fiero"¿Para que fuera volumetrica del todo que habria que hacer? ¿No iluminar los vertices con normal en la misma dirección que la luz (triangulos con las caras opuestas a la luz)? Me refiero a si deberian salir esos barrotes oscuros y la luz pasando entre ellos.
Buen trabajo. :)
Pues yo creo que si, pareceria como cuando se renderiza con HDR, aunque en ese caso la luz se correria un poquito por los barrotes. De todos modos parece sencillo el efecto, me gusta :D
para que sea volumétrica hay que utilizar un efecfto volumétrico. Normalmente se simulan con slides, que son planos orientados a la cámara, pero también se puede calcular en el shader el valor real en ese punto, he visto shaders que lo hacen :huh:
Pero eso se llama Light Shafts, comunmente, y hay muucha literatura en internet, pero parece que nadie se decide a mostrar el código...
Haddd lo soporta a través de slices :D
supongo que el efecto es lo mismo que poner un quad con billboard con una textura de un circulo gausiano solo que se evita el problema de que haga clipping con objetos cercanos de la escena, no?
Cita de: "tamat"supongo que el efecto es lo mismo que poner un quad con billboard con una textura de un circulo gausiano solo que se evita el problema de que haga clipping con objetos cercanos de la escena, no?
El efecto es similar pero en este caso no hay ningún quad sino que se calcula el valor de la intensidad del volumen de luz directamente en el fragmento que corresponda (los que están dentro/sobre el volumen), de ahí que no se vean intersecciones entre polígonos.
Saludos.
Cita de: "Haddd"Y lo de las transparencias no se a que te refieres :blink:
Si hay un objeto transparente en medio de la sala que pasa?
Saludos.
Bueno, nosotros el tema de las transparencias en realidad lo hacemos actualmente con refracción, así que se renderiza la escena a un cube map , por lo que no debería haber problemas...