Hola patrons,

Acabo de publicar la primera parte de Clarisse scatterers, en este video te mostraré algunos de los point clouds y scatterers disponibles en Clarisse.

Vamos a hacer tres ejercicios de producción, muy sencillos, pero que te servirán para aplicar en planos más complejos una vez comprendido el sistema de trabajo.

En el primer ejercicio usaremos point array para crear un simple pero efectivo sistema de multitudes de soldados. Después, utilizaremos el sistema de partículas point cloud para crear el video que acompaña este post, un efecto muy común en estos días.
Y finalmente, en este primer video, utilizaremos el point uv sampler para crear enormes entornos, tanto naturales como urbanos.

En la segunda parte de este training sobre Clarisse continuaremos explicando el resto de point clouds y haremos mas ejercicios de producción.

Visita mi Patreon para mas información.

Gracias,
Xuan.

Copyright SPI.

¿Qué es un scene assembler?

Un scene assembler, por definirlo de forma muy primaria, podríamos decir que es un contenedor, un recipiente. Un software donde recolectamos todo el material creado que formaría parte de un plano, o de una secuencia completa. Estamos hablando principalmnete de assets, animaciones, fx, cámaras, etc. Y lo ponemos junto para trabajar el look de todo ese material, para posteriormente iluminar los planos, renderizarlos y enviarlos al equipo de compositores.

Es decir, un scene assembler no es un software DCC donde creamos contenido, si no donde utilizamos el contenido ya creado, para darle vida en cuanto a los requerimientos del plano y secuencia se refiere.

Las tareas principales que vamos a realizar en un scene assembler, son las de look-dev, lighting y render, aunque también podemos realizar otras como layout, set dressing y pre-compositing.

La característica principal que define a un scene assembler, es que trabaja de forma procedural y no destructiva. Lo que llamamos “streamlined”. Siguiendo una serie de jerarquías y órdenes definidas por el usuario, vamos creando diferentes opciones de look, lighting, etc. en función de las necesidades del plano. Si en cualquier momento necesitamos realizar un update de cualquier contenido del plano, bien sea una luz, un personaje, un fx, una cámara, etc. todo el trabajo realizado hasta el momento se actualiza de forma automática, no necesitamos rehacer o reasignar procesos ya establecidos.

Todos estos procesos, que pueden ser muy diferentes, como asignación de shaders, atributos de render, etc. pueden definirse en base a la secuencia y reutilizarse en el resto de planos, sin necesidad de volver a crearlos. De esta forma, estaríamos compartiendo exactamente los mismos procesos en planos que tengan las mismas necesidades. O por dedirlo de otra forma, estaríamos creando y reutilizando templates, lo que nos permite estandarizar la forma en la que trabajamos en cada una de las secuencias de lighting, o incluso a nivel global del show, en cuanto a tareas de look-dev e ingestión se refiere. Estandarizado, algo vital en cualquier facility de efectos visuales.

Esto que hemos contado hasta el momento, no es poco si comparamos las tareas de look-dev y lighting con un software 3D convencional. Pero hay más, como por ejemplo lo que yo llamo “process on demand”. Los diferentes procesos, solo ocurren cuando y donde necesitamos que ocurran. Para empezar, un scene assembler es capaz de cargar una cantidad ingenete de datos, algo que es común en casi cualquier secuencia hoy en dia en proyectos “high end”. Imaginemos una ciudad futurística, con cientos de assets, cientos de luces, miles de texturas, etc. Mover todo eso en un software convencional es prácticamente imposible sin desarrollar herramientas complejas, algo al alcance de pocos. En un scene assembler si somos capaces de hacerlo, gracias entre otras cosas a que los datos, pueden vivir en el script, pero no necesitan ser invocados en todo momento. Esto se denomina “deferring rendering”.

Gracias a estos procesos “on demand” podemos utilizar o no cualquier parte de la escena, tanto en viewport como en render, sin necesidad de passes, overrides, etc. Y en función del plano, podemos indicarle al render lo que necesitamos o no, siempre desde un master template que se mantiene constante en toda la secuencia. Gracias a este sistema de trabajo es muy fácil y rápido gestionar escenas complejas.

Siguiendo ciertos patrones de organización, nomenclatura, etc, podemos organizar los scripts de assembly para que cualquier actualización de un elemento de la escena, sea una actualización ciega, en muchos casos nisiquiera requiere abrir el software para obtener una nueva versión del plano. Todo esto se consigue gracias al sistema procedural de atributos, y al sistema de asignación de shaders, como digo, siempre de forma “streamlined” y siguiendo reglas.

Los scene assembler también permiten crear referencias y sistemas de publicado inteligente, que ayudan a trabajar de forma fluída entre los diferentes artistas y TDs dentro de una misma secuencia y potencialmente el show completo, llegando incluso a trabajar de forma paralela con networks referenciados.

¿Quién utiliza scene assemblers?

Absolutamente todos los vfx facilities, y la mayoría de boutiques medianas. Cualquier empresa de efectos visuales que trabaje en proyectos vfx high end, se va a encontrar en la situación de tener que realizar planos muy complejos, que sólo podrán ejecutarse si el software de render permite realizar ciertas tareas. Por ello, los grandes estudios de efectos visuales y de animación utilizan siempre algún tipo de scene assembler para sacar adelante sus producciones más ambiciosas.

¿Puede beneficiarse un estudio más modesto o un freelancer de un scene assembler?

Sin duda. Depende del tipo de trabajo, el contexto de tu empresa y un largo etc. En ocasiones puede que utilizar un scene assembler sea como matar moscas a cañonazos, pero a largo plazo incluso para un estudio de menos de 10 personas, los beneficios de basar su pipeline de finishing en reglas y templates es más que evidente.

¿Qué scene assemblers están disponibles en el mercado?

Hay varios scene assemblers en el mercado, además de algunos propietarios. Cuando yo trabajaba en MPC, o cuando llegué a Double Negative, no había ningún scene assembler comercial, y teníamos herramientas propietarias, desarrolladas durante años, para sacar adelante las difrentes secuencias de películas como Harry Potter, Narnia, Piratas del Caribe, Batman, etc. Posteriormente estos estudios, y otros para los que también he trabajado, han ido de forma gradual adoptando diferentes scene assemblers comerciales que están siendo desarrollados por terceros.

Foundry Katana

El scene assembler por excelencia. Desarrollado por Sony Pictures Imageworks durante años y ahora comercializado y desarrollado por Foundry. Al igual que Nuke o Mari, Foundry ha sabido poner al servicio de todos una herramienta propietaria, desarrollada en exclusividad para proyectos de efectos visuales y animación.

Katana es el scene assembler más extendido, utilizado por Sony, Weta, ILM, MPC, etc. No es el más sencillo de utilizar de todos, pero tampoco es muy complejo. Basta con recibir un training introductorio y tendrás suficiente para empezar a trabajar en planos.

El viewport de Katana ha mejorado mucho con los años, y ahora ya es posible tener visualización PBR, previsualizar volumes, etc. Con escenas complejas se vuelve lento e inestable, pero la realidad es que a nadie le importa la visualización en viewport, lo que importa es una buena gestión de la escena, y que responda rápido de cara al render. La visualización en viewport, al menos en vfx, es algo secundario.

La navigación de la escena es muy buena en Katana, prácticamente igual que en Nuke, rápida, efectiva, no se puede pedir más.

Katana también ofrece diferentes opciones de render, desde Renderman a Arnold, pasando por 3Delight, que además ahora viene instalado por defecto y se puede utilizar de forma gratuita para aprender.

Mi opinión personal, es que Katana es el mejor scene assembler disponible en el mercado, y si de mi depende basaría el pipeline de look-dev, lighting y render de cualquier estudio high end de vfx en Katana. El único problema, es que es muy caro.

Isotropix Clarisse

Clarisse es otro scene assembler muy utilizado en la industria, siendo sobretodo Double Negative su mayor cliente. ILM, Tippet Studios, ILP, etc. son también algunos de sus usuarios. Yo tengo el dudoso privilegio, de haber sido la primera persona en renderizar un plano con Clarisse para una película, Godzilla.

Lo mejor que tiene Clarisse, son sus herramientas para realizar tareas de layout y set dressing. Los sistemas de scattering e instanciado de Clarisse son simplemente geniales. Extremadamente sencillos de utilizar, rapidísimos y sobre todo, efectivos.

Clarisse es muy sencillo de aprender, mucho más que otros scene assemblers, lo que permite una productividad elevada a un equipo pequeño. Sin duda, mi software de elección para estudios medianos y pequeños.

El viewport de Clarisse es de lejos el mejor de todos, permitiendo una visualización de componentes de shading y lighting en tiempo real, incluso con escenas enormes y complejas. La navegación por otro lado, no es tan buena como en Katana, ya que se basa en “contexts” o carpetas. La funcionalidad es exactamente la misma, también permite crear atributos de render, reglas, jerarquías, etc, pero la visualización es diferente y más incómoda. Esto de todas formas, cambiará con la nueva versión Clarisse Builder.

Lo peor de Clarisse, en mi opinión, es que sólamente trabaja con su propio renderer. Esto no es necesariamente malo, es un buen render, pero yo al menos sigo prefiriendo Arnold. Por otro lado, por un precio muchísimo más bajo que Katana, obtienes un scene assembler, un motor de render y también un compositor 2D. Aunque para ser sinceros, no vas a realizar planos finales con este compositor (o si), pero al menos los lighters podrán hacer slap-comps sin ocupar licencias de Nuke.

Houdini

Houdini no es un scene assembler dedicado, no es una herramienta nacida para ser un scene assembler, pero ya que Houdini es una herramienta procedural, puedes sin duda montarte tu propio scene assembler. No es tan cómodo, ni tan fácil, ni lo hace tan bien como Katana o Clarisse, pero es factible. Yo mismo he trabajado en varios shows donde Houdini era el scene assembler para realizar todo el look-dev, lighting y render. Actualmente es de hecho el software que utilizo en mi empresa como scene assembler.

El viewport de Houdini no es muy bueno que digamos, especialmente utilizando renderers de terceros, pero es más que aceptable. Houdini también permite tener un script muy complejo con muchos assets, fx, etc. y sólamente invocar lo necesario a la hora de render. No es tan eficaz como Katana en este sentido, pero es mucho mejor que cualquir otro DCC.

En cuanto a opciones de renderer, Houdini viene con su renderer nativo Mantra, que está muy bien, especialmente para ciertas tareas como renderizado de volumes, pero en lineas generales, como motor para todos los aspectos de una producción, es inferior a Arnold o Renderman. Existen otras alternativas, como Arnold, Renderman, Vray, Redshift, etc.

El precio es quizás el punto más favorable al considerar Houdini como scene assembler, ya que exsiten difrentes alternativas muy económicas, y además de obtener un scene assembler, y un rederer muy competente, también tienes todo el potencial de Houdini para la creación de contenidos. La curva de aprendizaje es mucho más lenta que los scene assembler antes mencionados, pero cada vez hay más recursos para ayudarte.

En cuanto a gestión de la escena, moverse por Houdini es en mi opinión mucho mejor que en cualquier otro DCC, pero inferior al sistema nodal de Katana, o potencialmente al nuevo Clarisse Builder.

Las herramientas de Houdini para generar point clouds, scatterers, instancias, digital assets, etc. son también un factor importante a la hora de contemplar Houdini como alternativa a Katana o Clarisse. Si bien estas no funcionan con todo su potencial con renderers de terceros, cada vez es mayor el soporte. Houdini también cuenta con un compositor 2D que permite a los lighter realizar slap-comps sin necesidad de ocupar licencias de Nuke.

Gaffer

Gaffer es un Katana simple. Cuando digo simple no me refiero a que puedas realizar menos tareas con el, si con a la simpleza que carateriza la forma de hacer las cosas dentro de Gaffer.

Gaffer es el scene assembly desarrollado internamente en Image Engine, y utilizado en todas sus producciones desde haces años. Además Gaffer es open source y gratuito. Lo que le convierte en un producto muy atractivo.

Es muy sencillo de utilizar, y a dia de hoy soporta diferentes renderers como Appleseed, Arnold o 3Delight, con otros motores siendo portados en un futuro.

La gestión de la escena es para mi la mejor de todos los nombrados hasta el momento, o como mínimo al mismo nivel que Katana, pero todo presentado de forma más limpia, más simple. El viewport es inferior a todos los anteriores, pero como comentaba más arriba, la visualización de viewport es algo secuandario cuando trabajamos en monstruosas escenas.

En Gaffer se pueden utilizar sistemas de instanciado, crear point clouds, etc. Aunque no está tan bien presentado de cara al usuario como por ejemplo en Clarisse, aunque la tecnología está ahí. Y es que John Haddon e Image Engine ofrecen Gaffer de forma gratuita, pero muchos de los recursos internos utilizados en Image Engine o Cinesite, no están disponibles. Aun así, es perfectamente posible montar un pipeline de look-dev y lighting con Gaffer out of the box.

Más o menos este es el panorama actual en cuanto a scene assembler se refiere. Por supuesto hay herramientas propietarias de las que no voy a hablar, y quizás haya algún otro scene assembler por ahí en desarrollo menos conocido. Pero estos cuatro mencionado aquí son los que te vas a encontrar si un dia trabajas para un big facility, o los que puedes incorporar a tu flujo de trabajo en un boutique o empresa más pequeña.

Por último, comentar que Maya, como DCC estandard en la industria de los vfx, aunque no sea un scene assembler y diste mucho de comportarse como tal, en las últimas versiones han sido implementadas ciertas característica para facilitar el trabajo con escenas muy grandes. Por ejemplo los alembic gpu caches, que permiten una carga mucho mayor de assets en una sola escena. Yo los estoy utilizando actualmente y son muy útiles. Por supuesto vestir escenas utilizando ass files de Arnold también es de gran utilidad a la hora de trabajar el dressing de un plano complejo. En resumen, poco a poco queda patente la necesidad de scene assemblers en muchas producciones, ya que los DCC van incorporando en cuanto puedes ciertas características que estamos acostumbrado a ver en scene assemblers. Y además, cada vez son más estudios de vfx de tamaño medio los que comparten secuencias de blockbusters con facilities mayores.

En elephant vfx, tenemos un curso muy completo sobre Isotropix Clarisse, donde mostramos prácticamente todo lo que ofrece el software y diferentes metodologías de trabajo. En cuanto salga de forma pública Clarisse Builder, también prepararemos una formación específica sobre look-dev, lighting y render. Hemos empezado un programa de colaboración con Isotropix para ser evangelistas de sus productos, así que tendréis más formación al respecto.

En cuanto a Katana, por el momento no tenemos ningún tipo de formación, pero ya estamos pensado en un curso que se llamará Katana Fastrack, donde mostraremos como crear un pipeline sencillo de look-dev, lighting y render. Está en nuestra cola de cursos, estad atentos.

En el blog de Xuan Prada podéis encontrar varios videos introductorios a Gaffer, donde podéis ver los primeros pasos en el software. Se postearán más videos sobre Gaffer en el mencionado blog.

También en el blog de Xuan hay una serie de posts sobre la utilización de Houdini como scene assembler. De momento solo se mencionan cosas muy básicas, pero se irá posteando más información de forma periódica.

Nota: Este post incluye contenido exclusivo para miembros de elephant vfx pro.
Clarisse, además de ser un motor de render, también dispone de algunas herramientas muy interesantes, útiles y sobre todo, fáciles de utilizar. Una de ellas, y una de las que más utilizo, son los scatterers, de los que he hablado en alguna ocasión. Los scatterers pueden combinarse con otras herramientas en Clarisse, y en la versión 3.x han introducido un nodo llamado point uv sampler, que básicamente lee las coordenadas uv de una geometría y esparce puntos a lo largo de la superficie, siempre en base a la información de uv. También permite controlar el posicionamiento en espacio uv en base a texturas, lo que viene genial por ejemplo para restringir el comportamiento de scatterers en base a máscaras.

Un ejemplo practico podría ser popular un terreno, por ejemplo un bosque, con árboles. Bastaría con utilizar la geometría del suelo del bosque, o una montaña por ejemplo, y con varias máscaras colocar de forma automática mediante scatterers diferentes tipos de árboles. En el ejemplo que ilustra este post, utilizo tres tipos de árboles diferentes que están colocados mediante tres sistemas de scatterer diferentes, cada uno de ellos controlado por una máscara que dictamina la posición de cada conjunto de árboles.

  • Empezamos importando en Clarisse el soporte que hará de terreno de nuestro bosque. En este caso un simple plano.
  • Creamos un nodo point_uv_sampler que se encuentra en el menú geometry.
  • En el apartado scattering -> geometry del point_uv_sampler seleccionamos el terreno.
  • El parámetro point cloud dictamina cuantas copias de el árbol que utilice aparecerán en escena, en este caso 500.
  • Necesitamos un scatterer que se ocupe de plantar los árboles. En la sección geometry support del mismo hay que seleccionar el point_uv_sampler.
  • Necesitamos importar el modelo de árbol que vamos a utilizar para popular el bosque. En mi caso el árbol esta separado en 3 partes diferentes, así que tengo que importar 3 .obj diferentes.
  • Aunque se trate de 3 objetos diferentes, en Clarisse voy a tratarlos como si fuesen uno sólo, un solo árbol. Para ello basta con crear un combiner y seleccionar las tres partes de las que se compone el árbol.
  • En la sección geometry del scatterer colocamos el combiner del árbol, de esta forma se duplicará tantas veces a lo largo del terreno como hayamos indicado.
  • He preparado 3 máscaras que establecerán la posición de cada uno de los 3 tipos de árboles que voy a tener en el bosque. He importado las 3.
  • Son figuras geométricas, simplemente para ver de forma clara que ocurre en la escena, en un entorno real serían más orgánicas.
  • En la sección texture del point_uv_sampler he conectado la primera máscara. Los árboles populados por el scatterer se ceñirán a esta zona, dejando de estar presentes en el resto del terreno.
  • En las opciones del scatterer puedo fáclmente dotar de variación en posicionamiento, rotación y escala al sistema de árboles.
  • He repetido el proceso con los otros dos tipos de árboles para así popular el bosque con mayor variación. He utilizado las otras dos máscaras para establecer el sistema de posicionamiento de los nuevos árboles. Al final en mi escena tengo 3 sistemas de scatterer y 3 point_uv_sampler.

Los suscriptores de elephant vfx pro tenéis un video de más de media hora donde explico todo el proceso de forma detallada. Click aquí, o en vuestro email.

Posted
AuthorXuan Prada

Ya hemos hablado en ocasiones anteriores sobre Isotropix Clarisse, si buscas por el tag "Clarisse", podrás ver todas las entradas al respecto.
En esta ocasión vamos a hablar de una tarea muy común cuando trabajamos con este software, que consiste en renderizar sistemas de partículas simuladas en otro software, en este caso Maya.

Como sabéis, Clarisse es un raytracer moderno que funciona de forma muy particular, una especia de scene assembler donde importamos todo el contenido realizado en un software 3D, y una vez en Clarisse nos beneficiamos de su tecnología para renderizar todos nuestros componentes 3D. Clarisse está siendo bastamente utilizado por estudios de efectos visuales digitales de la talla de Double Negative, ILM, Tippett Studio, etc. Iremos posteando más tutoriales, artículos y cursos en un futuro cercano.

En esta ocasión, vamos a ver como importar un sistema de partículas simulado en Maya para poder renderizarlo de forma muy rápida en Clarisse. Es un ejemplo extremadamente sencillo, pero espero ilustre la metodología de trabajo entre estos dos software.

  • Una vez tenemos el sistema de partículas terminado en Maya, basta con exportarlo via Alembic, el formato estándard para intercambio de archivos 3D en VFX.
  • Antes de continuar, es buena idea crear algún tipo de iluminación para poder ir viendo el restultado de nuestra escena 3D. En esta ocasión he creado un simple rig Image Baseg Lighting. En un post anterior explico como hacerlo de forma muy sencilla.
  • En la versión 2.0 de Clarisse existe una herramienta en el self lighting que permite crear un rig IBL con un solo click.
  • Para importar el archivo Alembic tenemos que ir a File -> Import -> Scene y seleccionar el archivo exportado previamente desde Maya.
  • Este archivo debería importarnos dos sistemas de partículas, un plano que sirve como suelo y la cámara para renderizar la escena.
  • Es buena idea crear diferentes context para mantener la escena organizada a medida que gana en complejidad.
  • En el context geo, he importado dos ficheros .obj uno llamado toy_man y otro toy_truck. Estas son las geometrías que voy a utilizar en mis dos sistemas de partículas.
  • También he movido el suelo a este context para tenerlo todo bien organizado.
  • Del mismo modo he movido los sistemas de partículas y la cámara a sus correspondientes context.
  • En el context materials, he creado dos standard shaders y dos file textures. Uno para cada geometría.
  • En el context particles, he creado un nuevo sistema scatterer y lo he renombrado a scatterer_typeA.
  • En el apartado geometry support del scatterer he añadido el sistema de particulas particles_typeA. Y en la sección geometry he añadido toy_man.obj
  • También estoy añadiendo algo de variación en la rotación de las partículas.
  • Si movemos el timeline podremos ver la animación de las partículas.
  • No olvides asignar los materiales creados anteriormente.
  • Para el segundo sistema de partículas, vamos a crear otro scatterer. Al igual que con el primer scatterer necesitamos indicar el geometry support y el geometry a utilizar, en este caso en toy_truck.obj
  • También estoy introduciendo variación en la rotación y posición.
  • Ya que estos modelos son bastante más grandes que los muñequitos, voy a introducir un offset en el sistema de partículas para que tengan menor presencia en pantalla.
  • Finalmente, vamos a añadir motion blur a la escena para lanzar el render final.
  • Vete a raytracer -> Motion Blur -> 3D Motion Blur.
  • En esta ocasión estoy renderizando sólamente 40 millones de polígonos y como podrás comprobar, los tiempos de render son fantásticos.

Hace unos meses, mis compañeros de trabajo de Double Negative estaban realizando los efectos visuales de Transcendence, entonces les vi utilizando Houdini para crear los efectos de una secuencia en particular. El efecto en cuestión trataba de millones de piezas pequeñitas formando volumenes y formas.
Poco despues vi que otros intentaban algo similar utilizando Maya's XGen y otras herramientas similares. Lo probé y funcionaba perfectamente.

Fotograma de Transcendence.

Fotograma de Transcendence.

Fotograma de Transcendence.

Estaba intrigado por esta técnica así que decidí recrear algo parecido, con distinto objetivo, pero similar en ejecución. Lo único que pretendía era crear imagenes resultonas, así que necesitaba un método mucho más fácil y rápido, no quería meterme en berenjenales complicados dentro de Houdini.

Creo que Cinema 4D combinado con Maya es la opción más simple y rápida que he encontrado hasta el momento.

Si alguien puede indicarme como enfocar esta técnica en Modo o Softimage se lo agradecería.

  • En Cinema 4D crea un plano con muchas subdivisiones. Cada una de estas subdivisiones generará un cubo. En este caso estoy utilizando un plano de 1000cm x 1000cm con 500 subdivisiones.

  • Crea un nuevo material y asígnaselo al plano.
  • Selecciona el plano y vete a Simulate -> Hair objects -> Add hair.
  • Si haces zoom verás que un hair guide se generá por cada vertex del plano.
  • En las opciones del hair reduce los segments a 1 ya que no necesitamos subdivisiones, vamos a renderizar cubos completamente rectos.

  • Cambia el root a polygon center. Ahora los hair guides crecerán desde el centro de cada polygon en lugar desde cada vertex.

  • Desactiva la opcion render hair de la pestaña generate, ya que no vamos a renderizar hair si no geometría.

  • También cambia el type a square.

  • En este momento ya podemos ver cubos en lugar de hair guides, pero son demasiado finos.
  • Podemos controlar el grosor de los cubos utilizando el parámetro thickness del hair material. En este caso estoy utilizando 1.9cm
  • Lo siguiente sería darle variación a la altura. Para ilustrar esto, simplemente añade un procedural noise al parámetro length del hair material. Por supuesto, podemos animar este ruido para crear animaciones muy efectivas.

  • Elimina el ruido procedural por ahora. Queremos controlar la altura utilizando imágenes bitmap.

  • También puedes ocultar el hair system en viewport, para que sea más rapido ajustar las opciones.

  • En el material del plano vete a luminance y selecciona un bitmapAjusta el UV Mapping para posicionar el bitmap como necesites.

  • En el hair material, utiliza la misma imagen en el parámetro length.

  • Copia las mismas coordenadas UV que estas utilizando en el plano.

  • Añade un pixel effect a la textura y escribe el número de pixels basado en la resolución del plane. En este caso 500

  • Haz esto en ambos materiales, el plano y el hair. Ahora cada cubo estará mapeado con una porción de la imagen correspondiente a cada subdivisión del plano.

  • Muestra el hair system. Voilá, ya está.

  • Cuanto más contraste tenga tu imagen mucho mejor para obtener mejores resultados. Te recomiendo muy encarecidamente utilizar high dynamic range images, ya que el contrast ratio es muchísimo mayor que en low dynamic images, y por ende, tus resultados seran infinitamente mejores.
  • En este punto, puedes renderizar esto en Cinema 4D o simplemente exportarlo a tu software 3D favorito y renderizarlo allí.
  • Para exportarlo como .obj por ejemplo, debes hacer el hair system editable.
  • Importa el hair system ya convertido en .obj en Maya por ejemplo. Trabaja allí tus shaders, luces y cámaras. Puedes utilizar la misma imagen que utilizaste para crear el hair system como diffuse texture, o controlar el color mediante procedurales, como bien precises.
  • En mi caso, he animado de forma rápida la translación del hair system, después he añadido motion blur y depth of field a la cámara para conseguir una imagen más dinámica.
  • En mi caso he querido mantener este ejemplo muy sencillito y solo he creado un pass beauty y un pass occlusion, pero por supuesto puedes renderizar tantos aov's como necesites.
  • Este ejemplo es muy sencillo, pero puedes crear un montón de efectos interesantes utilizando esta técnica y combinándola con tu experiencia.

Posted
AuthorXuan Prada

Los scatterers en Clarisse son geniales. Fáciles de controlar, estables, renderizan super rápido, etc. Llevo un tiempo utilizándolos para crear matte paintings y la verdad es que son impresionantes. Basta con arrojar un par de modelos de árboles diferentes, crear varios mapas para distribuirlos a lo largo de un terreno y ya está, en un par de minutos tienes un bosque entero.

Por supuesto, puedes renderizarlos con una luz interesante, a resoluciones muy altas y con todos los AOVs que necesites para tener control total en Nuke y crear matte paintings alucinantes.
Para este ejemplo, en lugar de hacerlo con árboles o piedras, vamos a hacerlo con piezas de Lego, que es más divertido :)

  • Crea un context llamado obj e importa grid.obj y toy_man.obj
  • Crea otro context llamado shaders y crea generic shaders para los objs.
  • Crea dos texturas y carga las imágenes correspondientes para el grid y para el toy_man.
  • Asigna las texturas al diffuse input de cada shader y después asigna cada shader a su correspondiente objeto.
  • Posiciona la cámara para ver el logo de Lego al completo.
  • Crea un nuevo context llamado crowd, y dentro crea un point cloud y un scatterer.
  • En el point cloud indica que el grid sea el parent.
  • En el scatterer indica también que el grid sea el parent.
  • En el scatterer indica que el point cloud sea el geometry support.
  • En la sección geometría del scatterer añade toy_man.
  • Vuelve al point cloud y en las opciones scattering geometry añade el grid.
  • Juega con el parámetro density. En este caso estoy utilizando un valor de 0.7

  • Como puedes ver el toy_men empieza a popular la imagen.

  • En la opción decimate texture añade el logo de Lego. Ahora el toy_men se distribuye en función del logo.
  • Añade un poco de variación en el  scatterer position y rotation.
  • Y con esto ya está, ¿Te has dado cuenta de que fácil resulta configurar el scatterer? ¿Y te has dado cuenta del polycount? 108.5 million :)
  • Para finalizar, y para hacerlo un poco más bonito, podemos eliminar la iluminación por defecto y añadir un setup rápido de IBL.

Render final.

Posted
AuthorXuan Prada