The two Houdini Digital Assets (HDAs) for converting a heightfield into other data, are two tools that work perfectly together to produce the data you need. The Terrain Mesh ROP will create one or multiple meshes from your heightfield, and the Terrain Texture ROP will render your heightfield into textures. The user gets control over a couple of parameters, which allows the user to get their desired result.

Terrain Mesh ROP

The Terrain Mesh ROP is a tool that can convert a heightfield into a mesh, while keeping curvature into account while doing so. The tool provides several parameters as seen above to let the user achieve the desired results.


The segmenting tab on the interface gives the user control over how the tool will split the provided heightfield layer into mesh pieces. The Height Layer parameter is the heightfield layer the tool will use to determine the shape of the generated mesh. By default the height layer. The user could however change this to any custom layer. This allows for additional layers to be baked out instead.

The tool will then split up the generated mesh into the specified tile count.  The default is 4x4, but can be changed to whichever the user requires. (Including 1x1)

Using the Visualize Toggle, you can quickly debug if the tool generates the data the way you want. It will color your meshes, and also show the generated UVs.


The meshing tab controls how the tool will convert the voxel based heightfield into a quad based mesh. The Base Density slider controls the ratio of voxels to quads. A value of 1 will produce as many quads as there are voxels in the heightfield. But this is often not required, since the heightfield could contain regions that do not need a lot of detail.

That's where the Adaptive Density parameter comes to play. The number of density levels will control how many more higher layers of details there are allowed to be. This will then result in more dense mesh regions where the curvature is higher. This falloff can be controlled using the Density Falloff Ramp. The image above demonstrates this quite nicely, where we see the mountain top having a lot of detail, which gradually becomes less detailed in flatter regions. 

UVs, Extrusion & Exporting

The tool also has two ways of generating UVs. The first one being from 0-1 UV-Space for the entire generated mesh combined. (Seen on the right in image above). This will result in the UV coords to match with the mesh. The tool however also allows each chunk to generate UVs which map every individual chunk from 0-1 UV-Space. This will give your textures a higher texel density.

Terrain Texture ROP

The Terrain Texture ROP allows the user to render the heightfield data not directly supported by the Heightfield Output sop into textures with ease. The tool allows you to render the following textures: Normal Map, Height Map (In case you want to use terrain systems in engine instead of meshes), Cavity Map, Occlusion Map. More could follow based on user requests.

The tool also allows you to specify tiled maps. Set the number of tiles and the total combined resolution, and hit export to start the rendering process. Note that rendering will take longer when using a higher resolution. (Just like any other render)