Seams in tiled terrains

hi there,

I get some seams, when putting together “Unity Terrains” (actually just placing them side-by-side at a specific location).
Is this normal? Can I avoid it somehow? Normally, they should tile 100%…

Cheers!

when you are doing a tiled export turn off the option which says that each tile shares an edge vert. this should remove this for you

I got only non-pro version, I stich the terrain-heightfields togehter with another program (L3DT). In it, everything looks good.
But when importing to unity, there are seams visible. I thought, maybe it´s a unity-terrain problem or setting, I got wrong inside unity…

Thanks!

I’m fairly certain that the issue you’re running into is because Unity is calculating the surface normals for each mesh separately, which means that the edge vertices are not accounting for the adjacent cell across the seam.

There’s no real way to fix this, other than supplying the correct normals to Unity yourself – maybe someone else here can chime in with how to do that.

Yeah, I guessed something like that.

When I put together all 4 pieces into just one single 2k res heightmap - everything is fine. But when using 4 sep. 2k pieces, seams are showing.
Because of the terrain beeing a “Unity terrain” and no “real 3D mesh object” - there is no way to change the normals or recalculate them.

But wait - Maybe I should use normal maps on the unity terrains?!

A good first step would be to check if it actually is a unity terrain issue or an export tile issue, export as a mesh instead of a heightmap and import that into unity and place them next to each other, if you don’t have the issue, it’s a unity terrain issue, if you still do, it’s an issue on world machine’s side. It would be a good first step to debug things further

Yes, this may be a good way… But the mesh is about 8mil polys - and that will be just one of 4.
So I think it will not work out right this Way.

Cheers

The mash doesn’t have to be 8mil poly at all, it can be whatever you decide (there is a dropdownlist in the mesh export, pick the option that lets you decide target polycount and export each terrain to say 200Kpoly, should be good enough to get a good idea)

Ok, it took a while…

So I stiched (blended) together four 2048x2048 WM-heightfields (exportet as .ter) in L3DT, exportet as one 4096x4096 .raw (16-bit).
In PS, I cut out 4 2048x2048 tiles, saved as 16-bit .raw, also.

Note: should I have to use 2048+1 here?!

Now opened each tile in WM again, File Input “Natural (File) elevations”, generated a normal map an a 5k poly, normalized, Y-Up mesh with UV-Coords for each tile.

Opened unity 3D, placed all 4 meshes next to each other. Assigned materials with normals for each mesh, see results. (2=Meshes with normalmap, 3+4=without)

I get some “spaces” in between, depends on angle you look at it (sometimes)…

Going crazy over this tiling-mess sigh - seems no way to extract some perfectly matching and tiling meshes/heightfield from WM (non-PRO) :frowning:
I really want to have a few tiling Unity-terrains/meshes…

Maybe, my workflow is totally wrong:

In WM I always wonder, why terreins are not tiling - I snap extents together, so that there should be no overlap or gap between them.
But when exporting terrains, they just do not tile nor fit together at there edges.

I observed:

-The more “erosion” = the less fitting
-Can´t get terrains (neighbor-extents) fit 100%

Cheers!

“file too large” for this forum… please “Up” the settings a bit :

So seperate post:

edit: fiddled with 2048 and 2048+1 things and gaps are closed (4) - but still visible seams , where there shouldn´t be… http://www.bundysoft.com/docs/doku.php?id=l3dt:userguide:io:export:mesh

Ok, I try that and the connecting meshes got also seams. I generated a normal in 8k res, cut out some 2k normal maps from it (I thought that should give some
good and invisible transitions between mesh-tiles…) but that dont happened :frowning:

I am really frustrated right now… I mean, come on - I got a 8k normal and colormap 16x16km, cut out some 4x4km 2k normals and colormaps - which should fit togehter perfektly, as ther were taken from one continous map/heightfield and so on… but it´s not going to happen, still

Reduce to essentials first of all, when you don’t understand what’s occurring.

Use a simple single heightfield base map, and cut out your four tiles and bring those to unity. You know that the terrain itself is contiguous in that case, so anything that shows up is a cutting/unity technique issue.

When manually cutting out tiles, remember that you will almost certainly need to have shared edges, which means that simply cutting in photoshop or similar won’t do it – for example, if your heightfield is a 256x256 pixel heightfield the first tile will need to cover pixels 0…128, while the second will need to still include pixel 128 and go to 255. Failure to duplicate edges will cause a gap very similar to what you’ve shown.

Lastly, I would strongly recommend hitting up the Unity forums for someone who has a good workflow for tiled terrains in unity – there are certainly more than a few gotchas! Once you know what you need for unity match mesh edges successfully, we can probably help more with the terrain-related aspect here.

Ok, I made some posts at L3DT and Unity3D forums, let´s see what wil happen…

for the cut - out thing:

That was the reason to use the L3DT programm - I thought it would be clever enought to regard/factor in that, when generating mosaic-tiles from the
WM heightfield… but it seems, it does not. It delivers the same results, like when I would manually cut things out in PS - hmpf…

So no shared edges, here.

Cheers!

1 Like