Usando el sistema de caústicas de Yafray desde Blender
por Daniel LaBarge





En este tutorial vamos a experimentar con Yafray y Blender, y aprenderemos cómo interactúan juntos. Crearemos sencillos efectos de causticas,usando la configuración por defecto. Además la experimentación puede ser usada para crear imágenes que corten la respiración!

Empezando

Antes de nada, necesitaremos tener instaladas las últimas versiones de Blender [Blender2.41] y Yafray [Yafray0.7]. Las puedes conseguir bajandotelas desde www.blender.org y desde www.yafray.org, respectivamente. Una vez instaladas,ya estaras preparado para realizar ¡tu primera escena de causticas!

Usando causticas
La configuración de la escena es muy sencilla. Usaremos la escena por defecto y variaremos la situación de la luz.

Paso1. Ejecutar Blender.

Paso2. Nos vamos al panel de botones Render[F10] y cambiamos el renderer de Blender Internal a Yafray. Esto mostrara nuevos paneles para los botones Render, Edit, MaterialyLamp. En breve,veremos estos nuevos paneles.

Paso3. En la ventana 3D seleccionamos con [RMB] el cubo que tenemos creado por defecto. Vamos a la ventana de botones Material [F5]. El panel Mirror Trans nos muestra las opciones disponibles con Yafray. Crearemos un cristal claro,usando la configuración por defecto para el cristal. Para ello, seleccionamos de la combo o lista desplegable Mat. Preset el valor ‘ClearGlass’.
Establecemos el resto de los parámetros del material tal y como se muestra en laFig.1. Biselaremos un poco los bordes de la malla. Para ésto, usé Subdivide Multi 3x (a3niveles) [F9>>Multires] y le añadí un Bevel 2x (a2 niveles) con valor de anchura 0.100 (Width) [F9>>Modifiers], para a continuación aplicarle un SetSmooth [F9>>Link andMaterials]. De todas maneras, un simple bisel puede quedar bien. Observar la imagen de abajo.





Paso4. En la ventana 3D cambiar a una vista superior (Top) [Num7] y añadir [Space] un plano [Add>>Mesh>>Plane] a la escena, que hace el suelo en la escena. Salimos del modo de edición [Tab]. Necesitarás moverlo [G] una unidad de rejilla [mantenerCtrl] hacia abajo en el ejeZ [Z], para que se ajuste a la base del cubo. Abrimos el panel de propiedades de transformación [N] y escalamos el plano 50 unidades, o manualmente [S] lo escalamos agrandandolo hasta que ocupe toda la vista de la cámara. A continuación, vamos al panel de botones de Material [F5] y añadimos un material nuevo.

Nos aseguramos que tiene la opción TraceShadow habilitada en este material. Si quieres, puedes aplicarle una textura. Yo usé un color sólido azul claro para el material.

Paso5. En la ventana 3D volvemos a cambiar a una vista superior (Top) [Num7] y seleccionamos [RMB] la luz creada por defecto y la eliminamos [Supr]. Situamos el cursor 3D, aproximadamente, en la posición 0, 4,2 (X,Y,Z) de coordenadas globales.
Pulsamos [Space] para añadir una luz de área [Add>>Lamp>>Area]. La luz se debería seleccionar automáticamente, y si no es así, pues la seleccionamos. Ahora nos vamos al panel de propiedades de transformación [N] y establecemos la posición de la luz (Location) a los valores 0,4,2 (X,Y,Z). También establecemos las coordenadas de la rotación (Rotation) a los valores 65,0,180 (X,Y,Z). En la ventana de los botones Material/Lamp, ponemos el valor de Power a 0.250. Le indicamos que el área de luz tenga forma cuadrada (Shape>>Square) con valor de tamaño (Size) 3.0. Por último establecemos el valor de Samples en la ventana Yafray: Shadow and Photons, a 10 como mínimo.

Paso6. Duplicamos la luz de área [Shift+D] y cancelamos el modo de desplazamiento [RMB]. Con ésto dejamos ambas luces en la misma posición original. En el panel de botones Material/Lamp, cambiamos el tipo de luz a Photon. En Blender, la única manera de generar caústicas en la escena es usando este tipo de luces. Establecer los parámetros de la luz tal y como se muestra en la Fig.2.

Paso7. Ahora nos vamos al panel de botones del Render [F10], y cambiamos los valores de los parámetros según la Fig.3.

Paso8. ¡Generamos la escena! [F12] El resultado debería parecerse a la primera imagen de este tutorial. Si no es así, inténtalo poniendo valores que no varíen mucho de los mostrados en las figuras anteriores. Y si aún así, no eres capaz de conseguirlo, puedes mirar el fichero del ejemplo caustics.blend.




¿Qué es lo que ha pasado?
Ahora que acabamos de crear un buen ejemplo de cáusticas, vamos a ver cómo éstas funcionaron en la escena, y qué más opciones están disponibles desde Blender. Existen tres paneles en la interfaz de Blender, que albergan los parámetros para las causticas:

El primero es el propio panel de Yafray. Este panel permite controlar la configuración del renderer de Yafray. Normalmente es aconsejable deshabilitar la opción de XML, para que puedas ver la generación de la escena en el momento que esta sucediendo. También puedes dejar el Auto AA habilitado, para permitir que Yafray controle automáticamente el antialiasing. Sin embargo, para un mayor control de las cáusticas, tendrás que cambiar a modo manual deshabilitando la opción Auto AA.

El segundo panel es el panel YafRay GI. GI se entiende por Global Illumination (iluminación global). La iluminación global es el efecto producido por la luz emitida desde la fuente de luz global de la escena. Para este ejemplo, nosotros usamos una GI detipo Full (parametroMethod), y establecimos la calidad a High (parámetro Quality) para obtener mejores resultados. Otros parámetros son Depth y Cdepth. Depth es el número máximo de rebotes para calcular la distancia de un rayo emitido durante el proceso de ejecución del trazador de rayos. Cuanto más pequeño sea el valor, más rápidos serán los cálculos, pero los resultados serán menos precisos. Y CDepth es similar, aunque es para el calculo de la profundidad de los rebotes de los fotones en las cáusticas. De igual manera, si el valor es pequeño, el calculo será rápido, pero la cáustica resultante será poco precisa. También habilitamos el parámetro Photons en este panel. Ésto permitira el uso de fotones en la iluminación global, los cuales son también conocidos como fotones ayudantes (Helper Photons). Éstos son emitidos en la escena desde todas las direcciones.Cuantos más fotones, mejores resultados (nosotros usamos 100.000), pero el tiempo de generación de la escena se incrementa enormemente.

El último panel es el de las luces (Lamp) [F5]. Esta situado en el panel de botones Material/Lamp. Necesitarás seleccionar la luz de fotones de la escena para que aparezca el panel Yafrayhadowand Photons. Con las luces de fotones (PhotonLamp) permitiremos el uso de fotones para generar caústicas directamente desde una fuente de luz. Aquí el parámetro Power es como en cualquier otra luz, e indica la cantidad de brillo que tendrán las cáusticas. La luz de fotones nos permite orientar las caústicas y optimizar adecuadamente los resultados. En el ejemplo, usamos unos 100.000 fotones. En escenas más complejas se pueden llegar a utilizar ¡hasta un millón! Dependerá de la cantidad de calculo que necesites para generar tu escena.
Podrías experimentar con otros parámetros y probar, aunque con la configuración por defecto ya se consiguen buenos resultados.

Ampliando el uso de las causticas
¡Las caústicas no están restringidas al uso con materiales transparentes! Puedes usarlas también con materiales metálicos, aunque recuerda que dos materiales metálicos al reflejar los fotones, a veces no mostraran las causticas.

Para finalizar, te daré algunos consejos para que juegues un poco con ellas:
Intenta añadir una textura o un color al cubo, y aplícale algún mapa Nor o de desplazamiento (Displacement).
Sustituye el cubo por una esfera u otra malla. Usa varias luces de fotones. ¡ Ten tu supercluster a mano ! Usa una textura global HDR. ¡ Envíame correos con tus experimentos ! ¡ Me encantara echarles un vistazo!




Tengo 17 años, y soy artista gráfico y programador de San Antonio, Texas. Trabajo como artista freelance en ID Studios [www.intellidesign.org] y como programador web en MonsterWeb [www.monsterweb.net]