Houdini Procedural Grass Setup

Procedural Grass

Calculating Distance in VOP

Calculating Distance in VOP

Creating Border Color using Distance attribute

Creating Border Color using Distance attribute

Creating Point Cloud for Gradient Scale by Color

Creating Point Cloud for Gradient Scale by Color

Quaternation Rotate to points. Normally we can give rotation after instance them but that is expensive way to give rotate after instance. If you keep the data in the point , that is more faster/cheaper method

Quaternation Rotate to points. Normally we can give rotation after instance them but that is expensive way to give rotate after instance. If you keep the data in the point , that is more faster/cheaper method

Quaternation Rotate by Color

Quaternation Rotate by Color

Color for Scale by Color and Distance

Color for Scale by Color and Distance

Creating color variation for Texture in Maya. Giving color and multiply it with two different noise. One big noise and small noise inside the big noise. This way we dont need multiple Texture and Texture mask in Maya. This method creates natural color.

Creating color variation for Texture in Maya. Giving color and multiply it with two different noise. One big noise and small noise inside the big noise. This way we dont need multiple Texture and Texture mask in Maya. This method creates natural color.

Houdini Workflow. All in one loop and this way we can use this setup for many different surfaced ground.

Houdini Workflow. All in one loop and this way we can use this setup for many different surfaced ground.

I have created this setup for our Tv cartoon series Saham. We were dealing with grass setup using Softimage but decided to change it littlie bit different and wanted to use Houdini Engine for Maya. I have created this setup using Houdini and its ready for Maya and Rendering because of our Render pipeline is in Maya.

Chech my blog about this work: https://www.artstation.com/sercan/blog/MpXz/procedural-grass-generator-with-houdini

The setup works with more than one ground. I have created in a loop and this way we can feed in many grounds and loop.
-Calculating the distance of the ground by camera/playground and creates three type scatter system by distance. Playground area has the maximum amount of grass and as long as gets far from the camera, grass scatters getting low.
-Giving rotate to points before copy/instance. This method is much more faster/cheaper than giving rotate after instance or copy. The point has the random rotate data already.