Terrain: ground surfaces
Regions, materials, sculpting, collisions and saving.
When to use Terrain
Terrain is the built-in ground-surface object: heights, textures, vegetation, collisions and navigation. It requires no project addon. Data is divided into regions; clipmap LOD reduces distant detail.
Each X/Z position stores one surface height. Use Voxel Tools or separate meshes for caves, overhangs and volumetric destruction. A Terrain hole removes part of the surface; it does not generate cave walls.
The Terrain interface is still being refined. Instructions below use object and property names; button placement may change. Start material work in Forward+ or Deferred and verify the chosen renderer on your target platform.
Create the first region
- Add a
Terrainobject to a 3D scene. - Set
Data Directoryto a project folder, such asasset://World/TerrainData. Regions are stored separately from the scene file. - Check that
TerrainMaterialandTerrainAssetsresources are assigned. - Add one region with the region tool. An empty Terrain object without regions is not a finished ground surface.
- Choose a height tool and set brush size and strength. Modify a small area, then smooth the boundary.
- Save both Terrain data and the scene. Reopening should retain the same surface.
Establish the scale of one region before expanding the world. Vertex Spacing controls the distance between vertices: a larger spacing lowers detail density in world units. Region size and LOD do not replace scale settings.
Materials and painting
Add ground textures to TerrainAssets. Configure each layer's albedo, normal map, scale and material parameters. Import normal maps as normal data, rather than color images.
Paint a small area with a selected layer. Inspect it nearby and at a distance: excessive scale stretches rocks, while tiny scale produces repetition and noise. Tools include texture blending, rotation, color, roughness and automatic terrain materials.
Establish texture scale first, then adjust transitions and automatic blending. One calibrated layer is more useful than many untested materials.
Sculpting and heightmaps
| Action | Purpose |
|---|---|
| Raise/lower | Establish large terrain forms |
| Set height | Prepare a level platform |
| Smooth | Remove sharp steps between strokes |
| Gradient | Connect areas at different heights |
| Hole | Make an opening for separate geometry |
| Heightmap import | Bring in prepared elevations at a defined scale |
Use sufficient height precision in the source heightmap. An ordinary 8-bit image can produce terraces across a large elevation range. Check dimensions, position, vertical range and neighboring regions when importing. Heightmap export preserves elevations, not a complete scene with materials and vegetation.
Collisions, vegetation and navigation
Collision Mode selects collision generation for the game, editor or neither. If a character falls through the ground, first check that mode and matching collision layers/masks. Visible geometry does not prove that a physics shape exists.
Place vegetation with the Terrain instancer or separate prepared prefabs. Check model scale, shadows, LOD and density. Keep decoration off surface types where it should not grow.
Navigation painting identifies allowed areas; it does not make NPCs move by itself. Prepare navigation data and test an agent's path. Collision geometry, the visible surface and navigation serve different purposes.
Saving, export and troubleshooting
| Problem | Cause and action |
|---|---|
| Edits disappear after reopening | Check region saving and Data Directory, not only .rscene |
| No visible ground | Check regions, the camera, material and assets |
| Stretched textures | Check texture scale and Vertex Spacing |
| Characters fall through | Check Collision Mode, layers and the character's mask |
| Terrain is missing from an export | Save regions inside the project and check their inclusion |
| Excessive cost | Compare LOD, region size, shadows and vegetation count |
The native export integration includes region data. Keep it inside the project and inspect the exported build separately from the editor. Copying only the scene file is insufficient to share the terrain.
Mesh baking produces surface geometry for a specific task; it does not replace the editable source regions. Retain source data for future sculpting.