I’m experiencing an issue with my terrain in Gaea and I’m trying to determine whether it’s expected behavior, a node configuration problem, or something else.
Here is a youtbe link, where I explain my issue with all the node system of the landscape: https://youtu.be/k_z2etlCkcg
Workflow
Gaea (latest version)
Terrain exported to Unreal Engine 5.8 using the Unreal node
Heightmap tested at both 4096×4096 and 8192×8192
Unreal Mesh Terrain imported at the matching resolution
Landscape size: 20 km × 20 km
Height: 1500 m
The issue
I noticed that many mountain slopes have visible triangular/pyramid-like faces. Instead of smooth terrain, the surface appears to be made of large flat triangles.
At first I thought this was caused by Unreal or the Mesh Terrain plugin, but after further testing I realized the triangular shapes are already visible inside Gaea, before exporting.
I also verified that:
The issue exists with both 4K and 8K heightmaps.
It is visible in the Gaea viewport.
In Unreal, the same triangular geometry is visible even in Unlit and Wireframe modes, so it doesn’t appear to be a material or lighting issue.
What it sounds like fundamentally is the vertex density is too low for the scale you want.
An 8k resolution heightfield is about 2.44m per sample at the scale you’re aiming at.
0.5/1/1.5/2m per sample is fairly common ( higher lower fidelity)
You could double check at half scale as well depending on Unreal’s Mesh Terrain system set up, might also give more clues where the issues exist.
I would also double check your project vertex density and texel density goals (latter not directly related but for textures of other objects it’s just good to balance them)
On the Gaea side of things your comment is interesting that the issues you’re seeing already exists.
Are there any particular processes you’ve done that create that kinda shape, like /origami potentially later in the mix?
Some Gaea’s screens may also help.
I haven’t tried Unreal’s new mesh terrain yet, though I do believe it’s still experimental so vigilant settings checks might be super important.
Lets reduce the potential number of issues to a minimum.
Have tested identical gaea landscape at different scales. The attached screenshots are from 4k gaea landscape imported as 1x1 km 100 m height and 5x5 km 500 m height. Yes, the scale of vertices becomes smaller, but the problem is persisting, no matter which landscape I will import, 20x20 km or 1x1 km.
Excluded voronoi as mask from node system. Doesn’t help with an issue.
Excluded outcrops and erosion2 from node system. Doesn’t help with an issue.
Mesh from from Gaea directly would also help to see if the issues persist without going through unreal mesh system, ideally that would give you your 1:1 representative.
Odd to see the mesh scale not change anything. I’m assuming nanite isn’t running?
Now I’m looking at the unreal docs/announcement, there appears to be a few things at play.
Potentially adaptive tesselation and the fact that resolution can be dynamic as well potentially means editor mode is light by default?
In terms of import scale I can’t find exactly any other import heightmap scenarios given so I’m left to assume that you’d either have to follow the original landscape docs to create the right size (scale) in cm, though the docs image is using 1:1 resolution and size and power of 2 which is different.
It’s a common troupe though that it takes a while for everyone to get used to the pros and cons of terrain systems in engines as there’s never really enough information to best practices etc.
What I would try now to just give you information
mesh built in Gaea at 8k imported and scaled at your current standard.
If it’s the same it point’s to vertex density/scale issues again, if it doesn’t then it’d be something with the scaling set up or some kind of safety when in edit mode for the unreal mesh terrain tool.
if that’s still a fail next you can try Unreal’s conversion math for height fields to landscape Gaea docs and this forum has it as well as the technical docs for unreal engine. This may give you some insight into what to apply size too ( because traditionally in unreal if you wanted a 25km2 map scale you wouldn’t apply 5000 x 5000 in your size transforms)
might sound silly but if there are in fact some safety systems in place in editor mode I’d also check the same spots in play mode to see if it changes.
lastly of course hit to the unreal forums for Unreal users as you’ll all be battling and trying to find the right answers regarding “heightfield+Unreal mesh terrain workflow”
Any direct dev confirmation would be your goal in areas where it’s not further explained.
I’m working on a large open-world project for Unreal Engine and I’m trying to understand the correct workflow for tiled heightmap export from Gaea Professional.
My goal is to import the landscape tile by tile into Unreal Engine, mainly to avoid terrain artifacts such as triangular/pyramid-like slopes and to make the workflow more suitable for large landscapes.
However, I’m having trouble understanding how tiled export is intended to work. The available documentation explains the build options and tile settings, but I couldn’t find a complete guide covering the full workflow from Gaea to Unreal.
Some of the questions I still have are:
What is the practical difference between exporting a single R16 heightmap and exporting tiled R16 heightmaps if the overall resolution is identical (for example, an 8K build)?
How should tiled landscapes be imported correctly into Unreal Engine? Should Unreal automatically detect and assemble all tiles into one landscape?
What tile size is generally recommended for large worlds (e.g. 4096×4096, 2048×2048, etc.)?
Are there any best practices specifically for Unreal Engine 5 World Partition?
If anyone knows of a comprehensive tutorial, documentation, or video that explains the complete tiled workflow—from exporting in Gaea to importing into Unreal—I would really appreciate it.
I’ve written both of these that should help understanding.
Unreal’s technical docs are also linked in there.
In answer to your questions:
R16/tile
Tile and non tile is memory budget
Loading in the entire map all the time is costly, you’ll soon run out of memory especially for an open world.
Unreal handles level streaming built in.
The other point is build time on Gaea’s side, 8k heavy nodes based single builds need tons of ram, if you don’t have it you may want to tile.
For Unreal there’s only a few instances you need to tile build.
You’re building above the recommended max resolution (8k)
You’re manually handling the tile data and streaming in unreal.
Unreal handles tiles
You’ll find it on their technical docs but through their landscape menu, with tile builds you add the file of the first and it’ll load the rest, but you still have to configure the components etc manually ( all sources provided tell you how to calculate).
in Gaea you can set the build resolution and in terrain definition you’ll see real scale m/px 0.5m 1m 1.5m 2m, are general rules with the latter 2 being optimal for large worlds when balancing memory budgets. I had already mentioned this to you in another post I believe but with tiles it’s a balacing game of how many loading and unloading at once there is a cost to this and often it’s project dependent but I would still recommend keeping to recommended unreal tech docs.
docs and samples are a good source for this but generally your streaming cell size (loading range) should be bigger than your cell so that you’re streaming in ahead of your camera position, it similar to the above it’s goal is to manage memory budgets, too little or too larger have different negative effects, so you have to balance it based on your project and memory costs. As a baseline often 1.5-3x the cell size is used as the loading range, so start there.
I’ve written two guides that cover most of this workflow and should give you a clean starting point:
The relevant Unreal Engine technical documentation is also linked in those guides.
To answer your questions directly:
The main difference is not the R16 data itself, but how the terrain is divided, imported, processed, and streamed.
A single 8K heightmap represents the entire landscape as one image. A tiled export divides that same overall terrain into multiple smaller heightmaps.
On the Unreal side, tiling is mainly relevant to memory management and streaming. Keeping an entire large landscape loaded at all times can become expensive, particularly in an open-world project. Unreal Engine provides World Partition and landscape streaming systems to manage which areas are loaded.
There is also a build-time consideration on the Gaea side. A complex 8K build containing many expensive nodes may require a substantial amount of RAM. If the complete build exceeds your available memory, tiled building may be more practical.
However, tiled builds also introduce additional setup and asset-management overhead. In some cases, it may be preferable to optimise the Gaea graph and produce a single build rather than introduce a tiled workflow unnecessarily. The correct choice depends on the landscape size, graph complexity, target hardware, and intended Unreal workflow.
For Unreal Engine, tiled builds are generally most useful when:
The landscape exceeds the recommended practical resolution for a single heightmap.
You need explicit control over tile-based terrain data.
Your project requires a specialised streaming or landscape management workflow.
Unreal can detect a properly named tiled heightmap set through the Landscape import workflow.
When selecting the first file in the tiled sequence, Unreal should identify the remaining tiles and assemble them into a single landscape layout, provided that the filenames and tile coordinates follow the expected convention.
You will still need to configure the landscape dimensions correctly, including:
Section size
Sections per component
Number of components
Overall landscape resolution
Landscape scale
The guides linked above explain how to calculate and configure these values.
There is no single tile size that is optimal for every project.
The appropriate tile size depends on:
Total landscape resolution
Target metres-per-pixel resolution
Landscape component layout
Runtime memory budget
Streaming behaviour
Editing and build performance
Target platform
In Gaea, you can set the build resolution and review the resulting real-world scale under Terrain Definition.
Common terrain resolutions include:
0.5 metres per pixel for high-detail terrain
1 metre per pixel for general-purpose landscapes
1.5 metres per pixel for larger worlds
2 metres per pixel for very large landscapes where memory and performance are more important than close-range terrain detail
For large open worlds, approximately 1.5–2 metres per pixel is often a practical starting range when balancing terrain detail against memory usage.
With tiles, there is also a cost associated with loading and unloading multiple regions. Smaller tiles provide more granular streaming, but increase management and streaming overhead. Larger tiles reduce the number of streaming units, but each unit becomes more expensive to load.
This balance is project-dependent, so I would recommend using Unreal’s documented landscape sizes and component configurations as the starting point rather than choosing a tile resolution in isolation.
As a general principle, the World Partition loading range should extend beyond the immediate cell containing the player or camera. This allows surrounding terrain to begin streaming before it becomes visible or is required.
A loading range that is too small can cause visible streaming delays or missing terrain. A range that is too large may keep unnecessary regions loaded and increase memory usage.
As an initial baseline, a loading range of approximately 1.5–3 times the streaming cell size can be a reasonable place to begin testing. It should then be profiled and adjusted according to:
Camera speed
Traversal method
Landscape complexity
Foliage density
Runtime memory
Storage performance
Target hardware
Tiling by itself is unlikely to resolve triangular or pyramid-shaped terrain artifacts.
Those artifacts are more commonly related to issues such as:
Incorrect landscape dimensions
Incorrect Z scale
Heightmap bit depth or format
Mismatched import resolution
Incorrect tile ordering
Missing or duplicated edge pixels
Height-range normalisation
Importing a heightmap into an incompatible Unreal landscape configuration
Some of these I had witnessed in your scale tests you showed me so it’d be worth testing the full pipeline using Gaea2Unreal node, a single file build and then validation the rest of your workflow, this will help clean it up and validate the long chain you have.
The two guides above should cover the main export and import process, while Unreal’s technical documentation provides the landscape component and World Partition calculations needed for project-specific configuration if you were needed to go full manual.
[!note]
I will also merge this with your original post on your triangle situation since this all stems from the same overall pain points you’re having.