Isotropix Clarisse es una "nueva herramienta" (presentada en Siggraph 2012) que básicamente y para resumirlo mucho, actúa como scene assembler. Es decir, no es un software 3D al uso, si no que has de crear tus assets, cámaras, animaciones, etc, en cualquier software 3D, y después exportar todo a Clarisse (mediante alembic preferiblemente), para una vez allí, trabajar el Look-Dev, Lighting y Render de tus planos y secuencias.
Clarisse es un poderosísimo ray-tracer, donde todo funciona en tiempo real. Esto es muy importante para el artista, ya que no es necesario esperar para visualizar los cambios de shading y lighting. Además Clarisse es muy rápido y estable, incluso utilizando escenas muy complejas, tanto a nivel de geomteria, como a nivel de shading, lighting y efectos de post-proceso como motion blur, dof, etc.
El estudio donde trabajo, lleva utilizando Clarisse algún tiempo. Ya lo utilizamos de forma discreta en Godzilla, y ahora lo estamos utilizando de forma muy extensa en Exodus. No hace mucho Double Negative ha anunciado que Clarisse será su herramienta primaria para Look-Dev y Lighting, así que creo que es un buen momento para empezar a hablar de esta herramienta en el blog.
Mi experiencia con Clarisse es de unos 9 meses más o menos trabajando en Exodus, y aunque no soy un experto ni mucho menos, creo que ya me defiendo bastante bien.
Hoy, voy a contaros uno de los básicos de cualquier software 3D cuando trabajamos en proyectos de VFX, Image Based Lighting.
- Empezamos por crear un nuevo context dentro de la escena. En este caso lo he llamado ibl.
- El siguiente paso es crear un esfera que actuará como soporte para nuestro HDRI.
- La esfera la sitúo dentro del context ibl, para que todo esté bien organizado.
- He aumentado el radio de la esfera considerablemente, ya que éste será nuestro "mundo" donde meteremos todos los assets del plano.
- En la pestaña image view podemos ver el render en tiempo real. Ahora mismo simplemente tenemos la esfera iluminada por la luz que viene por defecto. Podemos eliminar esta luz.
- Creamos un nuevo material matte al que no le afecta la iluminación.
- Lo asignamos a la esfera.
- Una vez asignado el material, la esfera se ve completamente negra.
- Creamos una imagen para poder cargar la textura HDRI.
- Conectamos la textura al color input del matte shader.
- Seleccionamos la imagen HDRI en el path de la textura.
- Cambiamos el tipo de proyección a Parametric.
- Los mapas HDRI son texturas 32bits codificadas en un espacio de color linear, así que tenemos que indicar en las opciones de la textura que estamos utilizando ese espacio de color.
- He creado dos esferas que me servirán para chequear mi iluminación. Presionando la tecla "f" puedo centrarlas en pantalla.
- También he creado un plano para chequear las sombras y dos materiales standard, uno para cada esfera. Uno será gris matte y otro será un material cromado, para simular lighting checkers.
- De vuelta en la ventana de render, podemos ver como las esferas están afectadas por el entorno HDRI.
- De momento, solo los secondary rays, como las reflexiones, están siendo afectados.
- Para que la iluminación funcione como tal, tenemos que crear un tipo de luz llamada "gi_monte_carlo".
- Así de primeras tendremos mucho ruido en la escena, básicamente esto ocurre porque los mapas HDRI tienen demasiado detalle en forma de valores de color/exposición.
- Para solucionarlo, podemos cambiar el tipo de interpolación de la textura a Mipmapping.
- Para seguir limpiando el ruido de la escena, también podemos aumentar la calidad de sampling de la luz gi_monte_carlo".
- El ruido de la escena también depende de la cantidad de Anti Aliasing Samples del raytracer de la escena.
- Para limpiar el ruido, en general hay que combinar los samples de las luces con los samples del raytracer. Un sampling de 8 aproximadamente para el raytracer es un valor adecuado para producción, y las luces pueden ser de 12 smaples aproximadamente. Todo depende de las necesidades de la escena.
- Existe otra opción mas barata, alternativa a utilizar GI.
- Elimina la luz "gi_monte_carlo".
- Crea una luz "ambient_occlusion".
- En su color input, conecta la textura HDRI.
- Verás que el render en principio, sale negro, excepto los secondary rays.
- Selecciona la esfera que hace de entorno y desactiva la opción "cast shadows".
- Todo funcionará correctamente.
- En este caso para limpiar el ruido deberás aumentar los samples del ambient occlusion.