- rubenltn
- Apr 19, 2021
- 2 min read
A simple system done in a couple of days that creates a procedural main path that in turn takes other HDA`s that auto-snap to the main path`s outer edges to create a variety of borders. In this case a skate ramp is used, but the system is built in a way that other procedural objects can be aligned to the snapped curve.
Video Demo
The video below shows the latest HDA`s in action in Unity:
HDA`s Details:

The 3rd HDA generates a terrain that deforms itself to accommodate the gameplay elements.
The main path is very straight forward. It simply takes a curve that has been added to the Digital Asset`s "Editable Nodes" so that Houdini Engine can hand it off to Unity as a user curve tool. A few other parameters are exposed to be edited in Unity such as the path resolution, cross sections and width.


Ramp Generator HDA is a bit more involved. The ramp profile is swept across a user curve that`s processed by a sub-net digital asset that handles border edge detection and snapping of the user curve to the main path curve`s geometry output.


The snapping system uses a custom written attribute wrangle node that moves the point of the first input into the closest point of the second input. This happens a couple of times followed by a refine node to add more points as needed depending on the main path resolution.

Some custom normals are also computed mostly to detect the direction of the main path`s cross section that has the sharing point being snapped to to define which direction the sweep should happen.
Below you can see the terrain generation HDA. Its a basic terrain HDA that takes other HDA`s to project and flatten areas to clear out gameplay elements.
