Skip to content

Auto Materials using Smart Surface Types

An overview of how traditional auto-material workflows can be replicated using Smart Surface Types.

As part of Voxel Plugin's material pipeline, Smart Surface Types can be used to automatically assign different Surface Types depending on the properties of the terrain in a given position. A Smart Surface Type can be used in exactly the same way as a regular Surface Type when it comes to Voxel Graph and editor workflows.

Surface Type Graphs

Smart Surface Types use a Surface Type Graph to choose between different Surface Types. They can also blend other Smart Surface Types in, allowing for complicated nested auto-material layers without needing to build complicated graphs.

Image
A cliff material and a grass material are automatically blended based on the terrain's normal in the Surface Type Graph.

The Sample Terrain node can be used to retrieve the distance field and any metadata from the terrain. Additionally, a Get Vertex Normal node can be used to retrieve the terrain's surface.

TIP

Using the Get Vertex Normal node is vastly more efficient than using Get Gradient in a regular graph. While Get Gradient nodes run the graph multiple times per position, Get Vertex Normal uses already-computed mesh data, making it basically free.