miércoles, 27 de noviembre de 2013

Blender Cycles: How to make an Infinite Plane Effect

Hi all. Today I'm going to explain how to make an infinte plane effect, similar to Pocoyo's style. I'm going to make a simple scene with my blog name:

Hola a todos. Hoy voy a explicar como hacer un efecto de plano infinito, similar al estilo de Pocoyo. Voy a  hacer una escena simple con el nombre de mi blog:



This technique also can be used to include rendered objects in real pictures or hdri environments. I will explain it in a later article.

Esta técnica se puede usar para incluir objetos renderizados en fotos reales o en ambientes hdri. Lo explicaré en un artículo posterior.

Basically we need to create two render layers:
- One render layer for the objects we want to show, in my example some letters.
- One render layer with the floor, which will catch the shadows of your objects.

Básicamente necesitamos crear dos capas de renderizado:
- Una capa de renderizado para los objetos que queremos mostrar, en mi ejemplo algunas letras.
- Una capa de renderizado con el suelo, que recogerá las sombras de los objetos.

We will render both layers with transparent world and mix them in compositing.

Renderizaremos ambas capas con el universo transparente y las mezclaremos con postproducción.


Note that Spot lamps or mesh lights can not produce shadows in the Shadow pass. You can use Sun, Point or Area lamps.

Observa que las lámparas de tipo foco (Spot) o las mayas de emisión no producen sombras en el pase de sombras (Shadow Pass). Puedes usar lámparas sol (Sun), punto (Point) o área (Area). 

The Letters Layer / La Capa de Letras

This is the setup of the first layer, the Letters layer. This layer includes the objects without the floor. Remember the environment is transparent.

Esta es la configuración de la primera capa, la capa de letras. Esta capa incluye los objetos sin el suelo. Recuerda que el entorno es transparente.



This is a normal render layer. I have only placed the letters in one scene layer and the lamp in another scene layer. Remember you have visible layers (behind Scene label) and scene layers (behind Layer label). If you check one layer in visible layers but not in scene layers, this means that the objects in that layer won't be rendered but affect to the rest of objects which are rendered. If you want that layer don't affect the rendered objects, you would need to check the layer in Exclude layers. In this case we won't do that.

Esta es una capa de renderizado (render layer) habitual. Yo sólo he colocado las letras en una capa de escena y la lámpara en otra capa. Recuerda que tienes las capas visibles (bajo la etiqueta Scene) y las capas de escena (bajo la etiqueta Layer). Si marcas una capa en las capas visibles pero no en las capas de escena, significa que los objetos en esa capa no serán renderizados, pero si afectarán en el resto de objetos que sí son renderizados. Si quieres que una capa no afecte al renderizado de los otros objetos, necesitarías marcar dicha capa en las capas de exclusión (Exclude). En este caso no haremos eso.

This is the output for this render layer:

Este es el resultado para esta capa de renderizado:


The green color is the alpha channel. Only the objects are rendered without the floor or their shadows.

El color verde es el canal alfa o la transparencia. Sólo se han renderizado los objetos sin el suelo ni sus sombras.

The Shadows Layer / La Capa de Sombras

And this is the setup for the floor / shadows layer. This layer only includes the floor which catches the shadows of the objects.

Y esta es la configuración para la capa de suelo / sombras. Esta capa sólo incluye el suelo que captura las sombras de los objetos.


In this render layer I have only checked the layer of the floor in scene layers. Besides I have checked the Object Index and Shadow Passes.

En esta capa de renderizado sólo he marcado la capa del suelo entre las capas de escena. Además he marcado los pases de índice de objetos (Object Index) y de sombra (Shadow).


The green color is the alpha channel. Only the floor rendered without the objects, in this case the letters. But the important information in this layer is not the reder, it is the shadow pass:

El color  verde es el canal alfa. Sólo se renderiza el suelo sin los objetos, en este caso las letras. Pero la información importante no está en el render, es el pase de sombra:



This is the final output without compositing, only mixing the two layers explained:

Y este es el resultado  sin postproducción, sólo mezclando las dos capas anteriores:

 
We need compositing to mix these layers and create the infinite plane effect.

Se necesita postproducción para mezclar estas capas y crear el efecto de plano infinito.

Compositing / Postproducción

This is the compositing setup of the scene:

Esta es la configuración de postproducción de la escena:


Firstly, it is needed to tweak the Shadow pass. If you don't want to see the border of the floor you can make something like this:

En primer lugar, es necesario ajustar el pase de sombra. Si no quieres ver el borde del suelo puedes hacer lago como ésto:



These nodes let you to obtain a clear shadow pass without artifacts in the border of the plane due to antialiasing problems. With respect to the objects index, in my example the floor has index 1, "El Brujo" letters index 2 and "De La Tribu" index 3. Index 0 gets the world background (see the Viewer node). I determine the pixels of the background and add them to the floor with its shadows with the "Greater Than" node .

Estos nodos te permiten obtener un pase de sombra claro sin artefactos en el borde del plano debido a problemas de antialiasing. Respecto a los índices de los objetos, en mi ejemplo he usado 1 para el suelo, 2 para las letras de "El Brujo" y 3 para las letras de "De La Tribu". El índice 0 obtiene el fondo del universo (vea el nodo Viewer). Con el node mayor que (Greater Than) determino los píxeles del fondo y los añado al suelo con sus sombras.

Now it is needed to add the shadows to a flat color background:

Ahora se necesita añadir las sombras a un color de fondo plano:



I will make this with a Mix node. The white color of my shadow pass means one and the black color means zero when it is used as mix factor. So I would put the color of the shadow in the first Image input of the Mix node and the color of the background (red) in the second Image input. Beside the blend type (Mix in this case) there is a button which let you to use the alpha channel of the second slot. If I use the alpha channel of the first slot, all the output will become transparent. So if I change the order of the backgournd/shadow colors I can use that button to get only the shadows transparent, leaving the background without transparence. So I have used an Invert node before the Mix node to use the shadow pass properly.

Haré ésto con un nodo Mix. El color blanco de mi pase de sombra significa uno y el color negro significa cero a la hora de usarlo como factor de mezcla. Así pondría el color de la sombra en el primer conector de entrada imagen del nodo Mix y el color del fondo (el rojo) en el segundo conector imagen. Junto al tipo de mezcla (Mix en este caso) hay un botón que permite usar el canal alfa del segundo conector de entrada. Si uso el canal alfa del primer conector, todo la mezcla obtenida será transparente. Así si cambio el orden de los colores de fondo / sombra puedo usar ese botón para que sólo las sombras sean transparentes, dejando el fondo sin transparencia. Así he usado el nodo invertir (Invert) antes del nodo mezcla (Mix) para usar el pase de sombra de manera apropiada.

Finally I mix the background - shadows image with the letters image with a simple Alpha Over node:

Finalmente  mezclo la imagen con el fondo y las sombras con la imagen de las letras con un simple nodo sobre alfa (Alpha Over):



That's all. I will write a later article to explain other tweaks and uses of this technique.

Eso es todo. Escribiré un artículo posterior para explicar otros ajustes y usos de esta técnica.

Bye

Hasta la vista

martes, 12 de noviembre de 2013

Blender Cycles: Making of a Cornell Box Scene

Hi everybody. Today I'm going to show you the making of a Cornell Box scene. I will explain a couple of tricks and the compositing I have used to make it more photorealistic.

Hola a todos. Hoy os voy a enseñar cómo hacer un escena de la Caja de Cornell. Explicaré un par de trucos y la posproducción que he utilizado para hacerla más fotorealista.

This is the Cornell Box scene I have made (you can see high resolution version here):

Esta es la escena de la Caja de Cornell que he hecho (puedes ver una verión de alta resolución aquí):


The scene is quite simple. A box made of diffuse lambert material, one sphere made of mirror material and a glass sphere. The material of the mirror sphere and the box has not secrets:

  • Box: Diffuse shader with roughness 0.0 (so it uses the Lambert's algorithm). The colors are blue (0.161,0.133,0.427), red (0.630,0.065,0.050) white ground/ceiling (0.725,0.710,0.680) and white wall (0.723,0.708,0.680).
  • Light: Emission shader with strength 15.0.
  • Mirror sphere: Glossy shader, with color (0.8,0.8,0.8) and Sharp option (perfect mirror without roughness).
La escena es bastante simple. Una caja hecha de un material difuso tipo Lambert, una esfera con un material tipo espejo y otra esfera de cristal. Los materiales de la caja y de la esfera de espejo no tienen secretos:

  • La caja: Diffuse shader with roughness 0.0 (so it uses the Lambert's algorithm). The colors are blue (0.161,0.133,0.427), red (0.630,0.065,0.050) white ground/ceiling (0.725,0.710,0.680) and white wall (0.723,0.708,0.680).
  • Luz: Shader de emisión con fuerza 15.0.
  • Esfera de espejo: Shader de brillo (Glossy), con el color (0.8,0.8,0.8) y del tipo Sharp (espejo perfecto aspereza).

First trick: the glass material  / Primer truco: el material del vidrio

Blender and cycles provide a glass material which I don't like. It produces sharp reflections:

Blender y cycles proporcionan un material de vidrio que no me satisface. Produce unos reflejos muy acusados:






To avoid that problem I have used a mix of refraction shader and glossy shader with fresnel factor:

Para evitar este problema he usado una mezcla de los shaders de refracción y  de brillo, con un factor de mezcla tipo fresnel:



I have kept the original IOR only for refraction (1.75) but I have used a lower IOR for glossy reflections (1.4). This way the glass reduces its reflections.

He mantenido el IOR sólo para la refracción (1.75) pero he reducido el IOR para las reflexiones brillantes (1.4). De este modo el vidrio reduce sus reflejos.


Second trick: the wall in front the camera / Segundo truco: la pared enfrente de la cámara

I have used a camera with 35mm of Focal Length, which is the standard focal length in Blender (it comes from Fotography). At this point the camera is out of the box, so if you close the box you can not see the scene. A common problem is seeing the World in the mirror sphere:

He usado una cámara con 35mm de distancia focal, que es la distancia focal estandar en Blender (procede de la fotografía). En ese punto la cámara está fuera de la caja, de modo que si se cierra la caja no se puede ver la escena. Un problema común es ver el universo (World) en la esfera de espejo:


To fix this problem I have tweaked the material of that wall:

Para solucionar este problema he ajustado el material de esa pared:






I have made it transparent for the back side and with diffuse material for its front side. So the camera can see through that wall.

Lo he hecho transparente por su cara posterior y coun un material difuso en su cara frontal. De este modo la cámara puede ver a través de esa pared.


Final compositing / Posproducción final

This is the final result without compositing:

Este es el resultado final sin postproducción:


The render looks fine, but it is a bit artificial. I have tried to make it more natural and photorealistic with this compositing setup:

El render está bien, pero es un poco artificial. He intentado hacer una imagen más natural y fotorealista con esta configuración de postproducción:


Basically the nodes make these tasks:

  • Filter Soften: This node reduces the shap borders in the rendered objects.
  • Lens Distortion: I have only used the chromatic dispersion which appear in the glass refractions.
  • Tonemap: This node makes tone mapping effect.
  • Color Balance: It produces more contrast in the render.
  • Glare Ghosts: This is an effect produced in camera lenses. This node creates it in the render.
Básicamente los nodos hacen estas tareas:
  • Filtro de Suavizado: Este nodo reduce los bordes afilados de los objetos renderizados.
  • Distorsión de Lente: Sólo he usado la dispersión cromática. Aparece en en las refracciones del vidrio.
  • Tonemap: Realiza efectos de mapeo tonal.
  • Balance de Color: Produce más contraste en el render.
  • Deslumbramiento de tipo fantasma: Este es un efecto que se produce en las lentes de las cámaras. Este nodo lo crea en el render.
I hope you like this brief tutorial.
Bye.

Espero que te haya gustado este pequeño tutorial.
Hasta la vista.

Este sitio emplea cookies de Google para prestar sus servicios, para personalizar anuncios y para analizar el tráfico. Google recibe información sobre tu uso de este sitio web. Si utilizas este sitio web, se sobreentiende que aceptas el uso de cookies. Más información Entendido