Setting up variations - Houdini


Let's open the man.hip scene

First you will have to create standard arnold materials using the images shipped in the data folder of your AtomsHoudini installation. Then assign each material to each geo, in the end you should have 5 materials: body, shoes, jeans, shirt and hair.

Create also another material for the tshirt, make a standard material with the diffuse color set to red.

Create a take called "variation1" and include all the display parameters of the man geos.

Create a new take and call it "variation2". Select variation2 and include in the take the Material parameter of the geo "tshirt_GEO1", then set the material to the new red material we created earlier. Finally include in this take the display parameters of all other geos like we did for the first take.  

You can see some renders on the right showing the result of this process.

You can create other takes for defining more combinations. The take names will become the variation names.
Please keep in mind the variation builder does not support render or material overrides, if you are planning to modify the material for a geometry on a take you should duplicate it and modify the new material like we did already.

If you are planning to add a LOD to a variation, please create a new variation take and label it so that the name starts with the variation name followed by a double underscore ("____") and the LOD name.



Variation Builder

Once you are happy with your set up, please open the variation builder from the menu: Atoms > Variations > Variation Builder .

Then do the following:

  • type "man" in the Agent Type field.
  • select the destination json file by typing its path or selecting it with a browser.
  • Browse to the skeleton definition file that you can find in the AtomsHoudini data folder.
  • Select the Hips joint and click the Refresh button.
  • Select Arnold from the dropdown list of the Renderers.

Leave everything else as it is and click on the Run button.
Your variations files will be be exported.



Variation Randomizer

Now open a new scene and initialize it. Then from the menu select  Atoms > Variations > Import Variation Json and browse to the json file you just exported.

Then do the following:

  • create a new agent group
  • add a grid layout and set the size (3, 1, 3)
  • set the display type for your agent group to "variations"
  • open the variation randomizer: Atoms > Variations > Variation Randomizer
  • select the man item from the list on the left and press on the middle arrow button. 
  • press the Run button and close the Variation Randomizer window.
  • Your agent variations are now randomized.

Finally export a cache for your simulation.



Before rendering you should make sure the ARNOLD_VERSION env variable is set up correctly or arnold won't be able to find the Atoms procedural. Typically this env variable is defined in your houdini.env.


  • Create a new scene.
  • Under the Atoms Menu: Atoms > Variations > Create Arnold Procedural
  • Select the cache and the variation json file you just exported, then click create.
  • In the property panel, set the draw mode to Variations.
  • Create an Arnold distant light and set its rotation to 0, 90, 45
  • Create a camera and place it in a good position for rendering.
  • Open the render view and click render. You should see your agents being rendered out.






Copyright © 2017, Toolchefs LTD.