Houdini Terrain Generation & Scattering

Streamlining the initial creation and population of terrain for importing within a bespoke engine.

This project is a proof of concept implementation that I created in my own time whilst at Splash Damage. Its purpose was to streamline the initial creation and population of terrain for importing within a bespoke engine. This HDA creates height maps, terrain masks as well as prop points to be exported into a bespoke XML format to later be imported into any engine that can parse the data. The system also creates larger area outland textures that are lower resolution that were used for the out of bounds areas of the map.

The idea is that artists would have a large portion of already pre-populated terrain to edit as opposed to starting entirely from scratch from an aesthetic point of view. The need to use an XML format was due to the engine not having its own implementation of Houdini Engine to utilise. The output consists of paths to the textures, water height, placeholder asset paths that we want placed (which is edited by the engine on import) with the matrix transform for these assets on the terrain. The HDA stores scattered points in custom regions based off of erosion and slope masks. The creation of the xml is done in a Python node in the graph that reads all the scattered points.