Houdini Set Dressing

Rendering environments can be complex when so many assets need to be present. By utilising point instancing with USD, environments become much easier to set dress and renders. This setup was utilising Houdini 17.5, and this method may change with Houdini 18, but hopefully there is still some useful information here.

Final map used for scattering points

Final map used for scattering points

Assets are brought in using the usd import node. Using a custom lookus server, we are able to always reference the latest version of assets. They are brought in individually for the assets to be scattered and the ground geometry.

Firstly, the terrain needed to be processed, and a map created to scatter the points. A float value was calculated for the steepness of the slopes from the angle of the normals. This was then multiplied by an occlusion map to reduce the values inside cracks and sharp changes in slope. This was then set to a power to control the falloff, and finally put into a ramp to clamp off small values, ensuring that no points get scattered there. Finally, a point wrangle defines other random attributes such as pscale and orient.

All nodes are combined into the usd point instance node, and are sperated according to their groups afterwards. The density map is multiplied by controlled noise, to set up variation between asset groups, and establish small biomes. Finally they are merged and prepped for moving over to the LOPs context for export.

Network overview

Network overview

Each USD file is imported separately, transformed to an appropriate scale with the base at world zero, and given a name attribute. These were also grouped into asset types like ‘plant’ so they could be seperated after all being merged into USDInstancePrototypes node. The scatter map was multiplied by a controlled noise pattern using a VOP network to add diversity between asset groups and establish small biomes. Finally, they were merged for prepped for moving over to the LOPs context for export.

Since publishing this asset, LOPs includes a native point instancer, and so it would be best to now move your scattered points over to LOPs prior to attaching any assets

Test Remderman remder

Test Remderman remder

In shot context

In shot context