Houdini Session – Week 4

This session we introduced arnold for houdini (htoa), HDRI maps (high dynamic range images) and ACES (academy color encoding system), the focus was rendering and getting the right shaders and their attributes right for each material. It is important to understand how light and it’s reflections in certain materials work as these make up for someone recognizing the material even before touching it. Parameters like roughness, transmission, reflection and specular are the ones we played with as these are the most basic and easier to understand.

HDRI are used as background images and help build up the environment and ACES is a color encoding system that includes a bigger range of colors than RGB and help get a better result as well as more flexibility to adjust color.

On houdini, we began testing the mantra render engine and houdini lights and see how they intereacted with a rubber toy testing model. The most simple light was hlight and then we tried the environment light as it represents a surrounding light so the whole model is illuminated like the light is coming from everywhere. So with the environment light it is possible to add an HDRI map and we can imediatly see the difference.

When rendering it is essential to know about the color values: 8bit; 16bit and 32bit. So if you have more color values it means more definition as they are multiplied each time.

Arnold is not an unknown thing to an animator, as it is the main render engine of MAYA our magic wand as animators, but in every software it works a bit differently. I installed arnold after a lot of problems with it as it seems my computer it set differently so houdini bugs with arnold environment variables but, with the help of Mehdi and Tao I was able to solve the problem and now everything works better.

On the rubber toy we experimented a lot of arnold lights and shaders to understand how it works as well as working in the different networks such as material, output and geometry like the previous sessions. To use arnold or any other render engine on houdini we need to create an arnold node on the output network so houdini recognizes it and then we can work on material and edit the shaders. Shaders need to be inside arnold material builder nodes. With the rubber toy we created a material builder for the toy and the ground and this was the result of those experiments.

After having a better understanding of how everything works we opened the project from week 2 where we learned how to work with dop and vop networks and play with particles and use arnold to render it and apply the different shaders.

The first step was to create another geometry node (on objects network) and have the model and the particles separated, so on the particles node we could just copy the model node and paste it on an object merge node inside the geo node, this way the paths are connected as we are using the same model we used for the particles. After this we created a grid, an arnold node on output network and the shader that the model had was gone as it was set for mantra renderer, now we have to apply the arnold shaders to the model, the hammer, the ground and the particles. Ofcourse the lights used have to be arnold lights that in this case we applied the HDRI map that we previously downloaded from HDRIHaven website.

On material network we created 3 arnold material builders for each material we were going to need and named them accordingly, and each had a standard surface material that then had to be applied as material to each geometry node on objects network. On the crag node where the model was we had to assign two different materials as the character is different from it’s hammer, so we added an attribute delete node to “separate” them and add a material node to assign the different material to the hammer – we used an expression for that.

These colors were only to have an idea of how that process works, now it is necessary to assign a real shader to the model so we used a curvature node to calculate the curvatures of the model and that allowed us to assign a “range” of colors based on the curvature values with a ramp_rgb node. So after assigning metalness to the hammer and the new color to the model it was time to add the particles, so another shader was created and we repeated the process of assigning the shader to the object. This is how the particle shader looks like after all the changes.

So the two ramp_rgb nodes are the ones responsible for color shading and we added quite a few for a more magical effect, these were the experiments with color I made.

At first, my particles were not changing color it was always black until i decided to redo the whole particle part and it worked! Due to my previous problems with arnold the geometry nodes did not have the arnold tab and some attributes were not being applied to the model. In the end all was solved and finally we had to add a bit of motion blur which made it look pretty cool in my opinion.

I made a render during the night and this was the final result:

Leave a Reply

Your email address will not be published. Required fields are marked *