Landscapes need a rework after years without big changes

Using Landscapes this week for a project I notice there is near no changes since the version of 2010-2011 in UDK landscapes that was 6-7 years ago guys. The max quality you can get at set all parameters max in a landscape right now is 1 vertex per 1m that in the modern games is really bad, yeah you can scale the landscape from 100x100x100 to 50x50x50 to get 1 vertex per each 50cm but I notice at have a empty scene with a single directional light and 4 landscapes of this making a cubic zone of 8x8KM 4x4km each one cause the max size per landscape by default is 8Km as in 2010-2011 that **4 plane landscapes of 4x4km each one without even materials take my whole 16GB of Ram **.

The today games have way more polycount detail than this: x2 to x4

This is about a .25 of difference between new terrains vertex, we are more or less in 2017 after all this is not 2010 anymore.

This is about performance and visuals but too about tools, my request are more like this:

  • Why can’t edit 2 or 4 landscapes at time I can’t manage to get their corners look at same height without holes and the terrains need to be at same height.

  • Move the terrains in the editor sometimes is locked and other take years to move, at copy to clipboard a empty landscape of 8x8KM the engine crash with a i7 and 16GB of Ram!

  • Some times at place entities with the foliage tool you want to place non instance objects, you just want place a small group of instances or don’t even need to be in the landscape can be in a static mesh (note you can already place in non landscapes).

  • Other times you need at place entities with the foliage tool automate a system to edit the terrain zone where are placed as for example if you have sand and need move the corners to give effect where the mesh in placed…

  • More detail in the landscapes we need x2 or x4 more detail the current 1m vertex is really bad when need detailed terrains, the player can’t even walk in zones.

  • Better performance please. 16GB for 4 empty landscapes is really absurd and the map is about 512-580MB.

  • Other engines uses offline tools that don’t need to load the materials of content or do rare game logics to setup in editor the materials layers and vegetation calculating all in editor and without the need of calculate nothing of that logics in the materials or BP. As example credits to the The Witcher 3 creators credits to the LumixEngine author

  • All of this without count with this system you can’t make caves, or non vertical terrains.

  • And the vertical LODs requested in 2014 not added yet.

Looks like Epic Games don’t even use the landscapes for their games as UT, Paragon or others looks like they use terrain meshes to get more detail and performance.

Thanks for you time.

You may get more detail from a mesh landscape but you won’t get more performance. The key there is what performance for what scale of detail you are willing to take. Landscapes seem to be made to be hidden by materials and foliage. Yet underneath they will be more performant than a mesh equivalent. I don’t have much knowledge on the landscape proxy but I would guess the method is designed this way for so long because it’s the best method for the tech.

well as said before to make some terrain that looks like the terrain in the video you need probably reduce the landscape sizes from scale 100 to 25 that give you the need of make 8km landscape to cover just 2km at the end and with 4 of that the engine take more than your computer 16GB so something fails here, yeah make meshes is other way but as you said won’t give more performance but anyway probably something can be done here since with just 4 or 3 landscapes the computer is at max…

That’s a bit of an exaggeration :stuck_out_tongue: UE4 landscapes aren’t that low-res… there are plenty of good looking landscapes done in UE4… plus you can use tessellation (like most games nowadays probably do).

I would say performance is probably the main problem and the editing tools.

Performance could definitely be better (use of better LODing system, quad-trees maybe?), the editing tools are either not good enough or completely useless in my case (if you want a proper terrain you absolutely have to use a heightmap generation tool like world machine), there is no voxel engine for caves etc. and no real-time editing or procedural generation.

I think the resolution of the landscape mesh is not really a problem… I suppose we could have better density control and height interpolation options but I would personally be far far more interested to see a voxel engine and real-time editing.

? Empty level with max size terrain (8.1 sqkm) takes 4,2gb memory(1gb~ with an empty map) (task manager) and a file size of 130mb~. Not to mention that a map that size is about 67.1 million verts. But that’s a ****ing massive map tbh. Kalimdor (WoW) is “only” 8km in height as well. At the end of the day the terrain should only really give you flat areas and act as a base ground. Just go to photoshop with that 8k heightmap and use gaussian blur very liberally and you should be arriving at something it’s meant to be used for.

Not exaggerated check make a 8Km landscape with all max and check in the default size 100x100x100 scale place your character is the same result.

And even with the LODs enabled and probably even at max you get the same x4 landscapes takes +16GB of ram

Tessellation don’t round the landscape looking, that is a effect by SubD and is not available for Landscape.

Modern games aren’t Wow anymore, there are new ones that the map is probably bigger than 10km and you have Arma and other games where is way bigger than that.

Is not about a limit with the terran and heightmap is limit of edit the terrain in engine and quality that it gives.

If you need quality as in that video the Landscape of 8km need to be reduced to 2km and will cost the same memory.

Also to add to this (and note that I’m not an expert in large landscapes by any stretch but) you would want to split a large landscape to smaller tiles to get more detail out of it and use level streaming or switch each tile to a lower-res static mesh representation based on camera location.

I’m sure there are plenty of other methods and optimization strategies to manage large landscapes… it takes some work and all but it’s surely doable.

IMO Epic should focus on improving performance, memory management, and finally implement a real-time/procedural editing system (because we have been asking that since UDK) and possibly a voxel engine… although I don’t see that last one happening before 2025 unfortunately :p.

You can use the landscape resample to add more verts to landscape.

It’s a pretty exaggerated example come on :stuck_out_tongue: that’s a lot of sharp edges… it would never look like that with a good heightmap.

And tessellation does in fact smooth it.

No tessellation:

With tessellation:

I’m not arguing about the performance and memory footprint though… it’s really bad… but that’s exactly my point, this is a performance/memory problem not a vertex density problem or w/e :p.

mmm can you share the material setup ? But that looks like the default engine material how you made that ? O_O

If you’re using the heightmap for the material tessellation then won’t be really useful, cause there I don’t use heightmap.

Sadly the collisions will keep bad as in the first :frowning:

Main problem of your solution is the player will cross throw the terrain, cause the collision

By the way if I try to set a material with Tessellation in the 8x8Km landscape the engine collapse.

Note I’m using the 4.13 that say work better but with a single landscape of 8x8km with tess take my whole memory another time 16GB or Ram…

I just copied the default material from engine content and added tessellation.

Tessellation seems to still be glitched in landscapes though, it doesn’t perform well even with 0 tessellation but assuming this gets fixed it should solve the vertex density problem.

You are probably right about collision :stuck_out_tongue: didn’t thought of that :o but the terrain collision is not fully accurate anyway, it’s probably usable in most cases.

Keep in mind however that with a carefully crafted (or blurred) heightmap you can avoid all of these sharp edges that you see here… it’s not usually a problem.
If you need to blur the heightmap too much then you can probably add back some of the detail by generating a normal map of the un-blured heightmap.

This is really bad one single 8x8Km landscape with a material that have a tess with x0.5 multiplicator and low LOD0 give 60FPS and don’t work correct with the non linear landscape LODs and far away components just hide and is taking the 16GB of Ram in my computer

Without count with all the wrong shadows…

Tessellation is semi broken until 4.14.

Edit: Just resample it to get more verts. Why you haven’t done that already?

resample what you mean ?

From the drop down select Change component size, put Resize mode on Resample, increase Sections per component. You can see for me it went from 505x505 verts to 1009x1009 which means 1 vertex per 0.5 meters. Increasing Sections per component results in even denser verts.

Thanks for the tip, but I have already the max size landscape, that will work ? going to check anyway

Last time I used this was for the landscape in my military base package. The landscape itself was 8k but it has 16k verts per side making it 1 vert per 0.5.

Well after take about 5mins calculating it works, but this looks like a bug or something ? because at create a landscale you can’t select the 2x2 and max ? :slight_smile:

Thanks you anyway this probably help me in one fo the problems :slight_smile:

But now looks like this need way more than 16GB of ram to manage this sizes.

I’m not sure why youre experiencing huge performance problems. Even at the resampled 8k landscape it was very normal for me. And I’m still on 4.12 and am staying away from 4.13.x. There are major bugs with landscape in 4.13.x so that might also explain the performance problems you’re having. I can only recommend you stick with 4.12 if landscape is important for you.

Well I moved to the 4.13 cause I read the new LOD system in landscape shutdown the use of tessellation to just LOD0 but here looks like all works pretty bad, will try in 4.12 never tried in it.

The 4.13 takes me about 12,5GB of Ram only at edit looking at landscape and load or save the map file takes all the ram.

The other day in 4.13 too the meshes at import of size 350k of vertex take lots in load too not sure if is related with my computer or what is… but before worked better I think.