Houdini 22.0 Nodes Geometry nodes

Neural Terrain Generate 1.0 geometry node

Adds pre-trained ONNX files erosion to heightfields.

On this page
Since 22.0

Overview

The Neural Terrain Generate SOP node applies a pre-trained machine learning model, stored in an ONNX file, to an input height field to generate terrain features such as erosion or stylistic landscape details. It analyzes the incoming height data and maps it against the learned patterns in the model, producing a transformed terrain that reflects the trained behaviors.

Tip

Three models are available for download on $SHFS. These can be downloaded in the nodes Download Models button, and can then be selected from the Models menu tab.

Inputs

Heightfield

Heightfields can be any size or resolution, the trained model resolution will be layered overtop.

Mask

You can use heightfield masks to mask out the neural models changes to the input heightfield.

Parameters

ML Models

Models

Defines which pre-trained models to use to perform inference. They all have a different look.

Custom

Use a custom model that does not ship with Houdini.

Metamorphic

Set as default. This uses a pre-trained model that will attempt to make a Rocky Mountains style terrain. For best results, use inputs with sharp peaking points, with lots of contrast, and flatter lower valleys.

Igneous

This uses a pre-trained model to attempt to erode heightfields as a rolling hill, with softer soil and exposed rock faces. For best results, use inputs with softer rolling hills, with a flat upper surface.

Sedimentary

This uses a pre-trained model to attempt to erode heightfields as desert style canyons, like Death Valley or Grand Canyon. For best results, use inputs with harsh steps and flatter areas.

Download Models

By the default, the node will estimate the appropriate voxel size based on the point cloud distribution. Enable this if you want to overwrite the voxel size manually.

Model File

Local path to a custom ONNX file with trained erosion.

Reload Model

Refreshes the model in the ONNX inference. This can be used when changing the custom path, or to refresh any cached cooks.

Set Up Shapes from Model

Calculates the input tensor data for the ONNX inference. Setting resolution, input attributes tensor shapes and data. If swapping models that require different input data, this will need to be hit to refresh the ONNX inference.

Height

Compute Range

Sets the Input Min and Input Max parameters to the bounding data of the input heightfield.

Input Min

Fits the minimum position in world space for the ONNX model segmentation layers.

Input Max

Fits the maximum position in world space for the ONNX model segmentation layers.

Keep Clip Mask

Keeping this mask on will output a heightfield mask for the range outside of the Input Min and Input Max range, which do not receive any neural terrain inference.

Segmentation

Segmentation Layers

The heightfield is split into segmented layers, each layer has been trained to specific erosion settings. The segmentation layer is set to a range between the Input Min and Input Max.

Advanced

Execution Provider

Determines which ONNX execution provider to use for inference. By default, the node will attempt to pick the best available provider and will prefer to use GPU acceleration if possible.

Automatic

Chooses the best provider for the current system. This option will prioritize using CUDA if it’s installed, uses DirectML/CoreML as a fallback depending on the platform, and uses CPU inference if no GPU provider is available.

CPU

Perform inference using on the CPU.

CUDA

Perform inference using CUDA/cuDNN. CUDA and cuDNN must be installed using the packages provided by NVIDIA.

DirectML

Only available on Windows. Performs inference using the Windows Direct Machine Learning library.

CoreML

Only available on macOS. Performs inference using Apple’s Core ML library.

Device ID

Use this parameter to specify which GPU to use for inference when multiple GPUs are available. It has no effect when using CPU inference.

See also

Geometry nodes