Terrain Merger: Combine N to 1
Combine adjacent terrain tiles and overlapping sections into one editable Unity TerrainData, including heights, textures, details, trees, and holes, with Burst-powered Editor and runtime support.
by Veridian Systems
Price History +
Combine Existing Unity Terrains into One Editable Landscape
Unity provides tools for editing individual terrains, but it does not include a built-in workflow for combining several existing TerrainData assets into one new terrain.
Terrain Merger fills that gap. It combines adjacent terrain tiles, overlapping terrain sections, or smaller terrain features placed over a larger base terrain into one new Terrain and TerrainData asset. Source TerrainData assets are read during the operation and are not overwritten.
This is useful when a divided landscape needs to be sculpted, painted, or edited as one continuous surface.
What Is Merged?
Terrain Merger combines:
- Heightmaps
- TerrainLayers and alphamaps
- Detail prototypes and detail maps
- Tree prototypes and tree instances
- Terrain holes
- Selected material and rendering settings
When several sources reference the same TerrainLayer, detail asset, or tree prefab, the output reuses that shared reference.
Common Uses
Terrain Merger can be used to:
- Combine imported or procedurally generated terrain grids.
- Consolidate tiles from another asset or world-building tool.
- Sculpt mountain ranges across former tile boundaries.
- Paint textures or biomes across a divided landscape.
- Place a sculpted mountain, crater, island, or other terrain section over a larger base.
- Create one temporary master terrain for broad edits before dividing it again.
- Build custom Editor or runtime workflows through the public API.
The result can be edited with Unity’s normal terrain tools.
Adjacent and Overlapping Terrains
Terrain Merger supports both arrangements, but they behave differently.
Adjacent Tiles
Adjacent terrains are resampled into one output TerrainData. The tool does not automatically bridge empty gaps or repair unrelated edge heights between terrains that were sculpted separately.
If neighboring terrains do not already meet correctly, the mismatch may remain visible. After merging, the former boundary is part of one TerrainData asset and can be corrected with Unity’s terrain tools.
Overlapping Terrains
When terrains overlap, the Blend Radius controls how their height and texture data are feathered near the overlapping boundaries.
This supports terrain-stamping workflows, such as placing a smaller mountain terrain over a larger base landscape.
Blend Radius affects overlapping areas only. It does not create terrain between separate tiles or fix a physical gap.
Editor Workflow
The included Editor window provides the normal workflow:
- Add selected Terrain objects or gather active terrains from the scene.
- Calculate the output bounds automatically or enter custom X/Z bounds.
- Set the output name, basemap resolution, Blend Radius, and copied settings.
- Choose Smart Auto-Pathing or a custom project folder.
- Execute the merge and inspect the result.
- Revert the latest Editor merge if the settings need adjustment.
Smart Auto-Pathing creates a Merged_Terrains folder beside the first source TerrainData asset it can locate. Each operation is saved in a separate timestamped subfolder.
The Editor can optionally deactivate the original Terrain GameObjects after success. Their TerrainData assets remain unchanged.
Revert Last Merge removes the latest recorded output and reactivates the source GameObjects disabled by that operation.
Large and High-Resolution Terrain Data
Terrain merging can involve very large height, texture, and detail arrays. Terrain Merger uses Unity’s Burst Compiler and C# Job System for the expensive calculations.
Large detail maps and alphamaps are processed in bounded internal sections instead of retaining every complete source and target map at once. Heights, trees, holes, details, and alphamaps are also processed in separate stages. Pixel calculations remain parallel and Burst compiled.
The pipeline has been tested with multiple source terrains using Unity’s maximum heightmap and alphamap resolutions and fully populated multilayer alphamaps.
Practical merge size still depends on available memory, map resolutions, output bounds, TerrainLayer count, prototype counts, and foliage density. The processing design reduces avoidable memory use, but large operations still require adequate RAM.
Runtime Component and Core API
The included RuntimeTerrainMerger component provides access to the same core engine during Play Mode or in a built player.
It supports:
- Assigned source terrains
- Gathering active terrains inside a world-space Bounds
- Automatic output-bound calculation
- Progress and completion events
- Cooperative cancellation
- Optional source deactivation
- Removal of the generated result and restoration of disabled sources
A public core API is also available for custom procedural systems and Editor tools.
Runtime merging is best suited to loading screens, procedural world setup, user-generated content preparation, or other controlled stages. The heavy calculations use Burst jobs, but creating and assigning Unity TerrainData still uses main-thread Unity APIs. Large runtime merges can therefore cause visible stalls.
Output Resolution
Each operation creates one Terrain and one TerrainData object.
Unity limits a single TerrainData asset to:
- Maximum heightmap resolution: 4097
- Maximum alphamap resolution: 4096
- Maximum detail resolution: 4048, subject to Unity’s detail patch requirements
Terrain Merger calculates output resolution from source sampling density and the selected world-space bounds, then limits it to Unity’s supported values.
If several high-resolution tiles cover a larger footprint, the complete area must fit within one terrain. This can reduce samples per world-space metre.
TerrainLayers and Prototype Accumulation
The output contains the combined set of unique TerrainLayers, detail prototypes, and tree prototypes used by the sources.
For example, six terrains sharing four TerrainLayer assets normally produce four output layers. Six terrains using four separate layer assets each may produce up to twenty-four output layers.
Additional TerrainLayers increase alphamap memory and terrain control textures. Large prototype counts can also increase draw calls and reduce instancing efficiency.
For better results, source terrains should share a common library of TerrainLayers, detail assets, and tree prefabs whenever practical.
Important Limitations
Terrain Merger is a terrain-production and editing tool, not an automatic repair or runtime-optimization system.
- Blend Radius affects overlapping terrains only.
- Empty gaps are not filled automatically.
- Adjacent edge mismatches are not automatically sculpted into alignment.
- One operation creates one output TerrainData.
- Unity’s terrain-resolution limits still apply.
- Large combined footprints may be resampled at a lower world-space density.
- Unique layers and prototypes accumulate in the output.
- High TerrainLayer counts can require substantial alphamap memory.
- A maximum of 64 valid source terrains can be included.
- A single merged terrain is not automatically faster to render.
A monolithic terrain may reduce streaming, selective loading, and culling flexibility. Profile the result separately if it will remain merged in the final build.
Demo Environment
The package includes a procedural Demo Scene Generator instead of a large prebuilt scene. It can create adjacent and stacked scenarios with TerrainLayers, trees, details, and optional water. Generated demo assets can be removed after evaluating the workflow.
Requirements
Terrain Merger requires Unity 6 or newer and uses the Unity Burst Compiler for its main calculations.
The complete dependency list and limits are provided in Technical Details.
Expand Your Toolkit
Terrain Merger is part of a group of Veridian tools for terrain and environment workflows.
Terrain Slicer — Free
Terrain Slicer performs the inverse operation by dividing one large TerrainData asset into smaller terrain tiles.
A common workflow is to merge a divided landscape, make broad edits, and then use Terrain Slicer to divide the result for streaming or scene organization.
BurstLOD
BurstLOD generates LODs for mesh-based environment assets such as trees, rocks, buildings, and other props.
Terrain Slicer helps organize the ground, while BurstLOD addresses the mesh objects placed across the environment.
View the complete Veridian catalog:
https://assetstore.unity.com/publishers/120204
If Terrain Merger is useful in your project, ratings and reviews are appreciated.