Houdini Resources

Updated on June 26  2024


Houdini Height Fields

Deborah R. Fowler



Houdini Height Fields:

Posted Sept 24  2017
Updated Sept 30  2019
Updated April 27  2020 with a few additional sample files
Updated Jan 31  2021 with more detailed Unreal instructions
Updated April 30  2023


Height fields are new in H16 and are 2D volumes that makes complex terrain light weight. There are new tools for height files (type hf in the tab menu) and much to explore.

Highly recommended places for information:

Quick Examples


In game: note there is a SideFX LABS node now (19.0 and up) that should be used instead


Recommended places for data:

My brief notes from the above mentioned masterclass. As of 4/30/2023 in 19.5.303 with the dailies lab tools this only downloaded color and osm maps. To be further investigated.
Looks like mapbox is moving to mapbox gl js. For now use Open Topography.


Height fields are storing 2D data but are treated as a volume (ie. height). There are no polys (and don't convert unless you want them to bog down your session). They use the gl tesselation shader on the video card.

Since they are volumes, you are use volume tools with them, volume blur, re-sample etc. They are tile based as well. Volume compress will reduce memory footprint, similar to how it is used for pyro). It is possible to create another matching volume and merge ie. height and rainfall.

height field visualation node
height field wrangle (really a volume wrangle)
hf copy layer

In the collisions tab there is a terrain object as the bullet solver is aware of height fields.
They are a new type of primitive to work with 2D data. The teal input is for height volumes, not polygons.

Some interesting results from others:

So cool to try:
1. Download a map (maybe your home town) from terrain.party (was working when this file was downloaded, no longer functional)
2. Create a geo node, dive inside, create a height field file node - read in your file.png
3. Increase the setting on the Height Scale

(Here is a quick sample with the Saskatchewan River in Saskatoon)


Fun things to try:

Adding geometry by projecting onto an existing terrain (height fields can't be "bent" but this provides a cave workaround)
caveWithStaligtites.hipnc

HF Layer has a third input that you can use a mask. Also Sinusoid noise (turn center off) can be useful for creating slopes.
terrainExample.hipnc


Rendering:

If you are having issues with the uvquickshade, you can also use a layered material - example file here.
(when adding displacement, beware that the ipr render may not keep up with autoupdate, use mplay render)

Note that to create a mask attribute that you can bind you can use HF copy, use these much like you would grouped uv's ie. chained NOT merged

In Mantra, no need to convert to poly but ...

In Karma - if you use sop import you can check the box to have it convert on import to render https://www.sidefx.com/forum/attachment/33d009e374aabde92b198ad718b8617d972cde3d/

In Redshift