top of page
brynnhooper01

Unreal/Houdini Vine Generator

This post is to showcase a vine generator tool I developed in Houdini to work with Houdini Engine in Unreal 5.1. Lets start with a video showing off the tool in use.


 

To start off with how this all works, here is the Houdini graph. It is a long one with many steps. Most of this tool is working with the spline path solutions to get the natural growing vines look. The red is dealing with the splines, yellow with normals/vine wood modeling, and teal is the leaves modeling. The small blue notes are for labeling which parameters are exposed to the user.


 

If we look at the process for creating the vine splines it has a couple steps. The first step is to take the model and remesh it with more polygons, then apply a random mask with soft noise to the surface of the model and delete those faces. This gives the growing pattern something random to work with. I am using a test geometry head in Houdini for this example.

Next comes another quick remesh to lower the polycount for Houdini's built in 'findshortestpath' node. This gives us a nice result that looks similar to vines growing up the model which we can then resample to smooth out the splines a bit more.


Next there is a hanging vines feature that looks for downwards facing normals on the splines to pick random points to hang a spline from. Finally for the vine wood comes the sweep to give it geometry and finish it all off.


 

Diving in close to the leaves aspect of this tool shows a process of creating leaf cards and dividing them up into different UV positions so the user can use any leaf atlas texture they want in Unreal.


Leaves are then copied on to random points giving this result in Houdini (before textures are applied in unreal)


 

Overall this project was a big challenge and took me a decent amount of time but what I learned in terms of procedural modeling, working with generated content, using Houdini Engine, using Unreal nodes in Houdini, and setting up parameters has been a great learning experience and I cant wait to make more crazy tools.

 

Here are a few more examples showing the versatility of the tool. It can be used on virtually any model with the only limitation being more compile time the more/bigger models you use.


留言


bottom of page