top of page
Writer's pictureAlexander Clark

Making Redwood trees with Houdini

Updated: May 19, 2023


As a subcontractor for a client of Roblox, I was tasked with creating a redwood a tree in a stylized/ realistic style. All of the modelling work was completed in Houdini and the texturing was done in Substance Designer.


Using Houdini made things easy and fun, with a node-based workflow it was simple to make non-destructive adjustments and any kind of variations I needed.


Starting with a single node I generated the highpoly mesh for the treetrunk and I then used a cylinder as a base for the lowpoly mesh and raycasted it onto the highpoly mesh. To help capture more details around the base of the trunk I added a few

edge loops.



Lowpoly mesh
Highpoly mesh

With the highpoly and lowpoly trunks made I created the alpha cards for the branches. This was easy because a single node handles the placement and orientation, I only needed to create multiple card variations for multiple branch textures.

Each color is a different branch

As for the texture of the branches, I decided I would generate the model in Houdini and texture them in Substance Designer. For added color variation on the branches, I created random values for each bristle and applied it as their greyscale color, When the vertex mask is baked out I can just multiply the mask over the top of the texture for the color variation.

With this I am now able to have infinite branches!

Down below you can see the power of Houdini's non-destructive modeling. I tied the branch seed I created for randomizing all the elements to the current frame and cached a dozen or so branches out.

Procedurally generated branch variations
Baked textures of the branches from marmoset

I chose the branches I liked the most from the cached frames and exported them for baking in Marmoset toolbag, I could have done this all in Houdini without the need to export the branches but I'm more accustomed to Marmoset toolbag and had easier control over the maps that I wanted to bake. Another alternative is to create a shader/material in Houdini for the branches and render them out in Houdini fully textured, this would have removed the entire need to export the branches and texture them in another program.





Using the baked maps from Marmoset I created textures in substance designer. To handle the sheer amount of maps for each branch, I created subgraphs with exposed parameters that would easily let me control the color variations of the branches.

Textured branches in Substance Designer

Below are the final textures and the branches on the Redwood tree, there is just one example but I can make heaps of variations to the style with the approach I've chosen.

Branches on the Redwood tree
Textures


At this point, I went back and fleshed out the tree trunk, tying the base into the ground and adding small branches for a more dried out or dead look. The tree trunk was then baked in Marmoset toolbag and textured in Substance Designer, I could have done this in Houdini but once again it was just quicker for me to get the results I wanted with Marmoset.










And that's it, the tree is done! I can easily make a couple of variations if needed by going go back and changing parameters and the seed value. To make things even more streamlined and easier I could have done the baking and texturing in Houdini.


I learned so much about Houdini and will be using it more in my day to day workflow. Thanks for hanging around and reading my post!






85 views0 comments

Recent Posts

See All

Comments


bottom of page