Large lanscape component problem?

Hi,

For the open world game we are developping, we need a lanscape having a size of 8 x8 km.
We need a precision of 25cm for the first lod.

The documentaiton advices to not exceed 1024 components to limit the amount of drawcalls, which I understand perfectly.

Now our problem is that then the maximum size suggested in the documentation is 8129x8129,127 quads,4sections(2x2),254x254(component size), and then having in total 1024 components. The problem is that this setting will allow then only to have a precision of 1 meter for an 8x8km landscape, and we need 25cm.

The only solution I see currently is to use more components and to limit the view distance to 2km, which will allow us to have a 25cm precision. The overall size will be then 32000x32000, having 16000 components, but as we will limit the view distance (clipping plane) to 2km, we will still have then only 1000 components visible at a time. The the terrain component are then streamed in and out while moving on the map.

I would like to know if you would advice to do this or do you see some issues going this way. On our side it’s already a big problem to limit the view distance to 2km. It would be so much better if the engine would group components together with distance to limit the amount of drawcalls. This way, it would be possible then to not limit the view distance and having the 25cm precision for the closeby terrain.
To sum up:

  • Is there a plan for the Unreal team to optimize the terrain system to limit the amount of drawcall by grouping component with distance?

  • Is the backup solution I propose (much more components , but limited clipping plane distance) reasonable?

Thanks

Right so why do you tie your visibility distance to the number of components rendered?
World composition and its level LOD generation and level streaming should help you.

While your whole world size is ~~32k x 32k, you can split it into several levels. For example, a grid of 16x16 levels, each with 2041 terrain(64 components). You are streaming in levels only around the player, so you would have to set up level LOD in a such way, that you only render 4 levels that are closest to the player at once.

So the actual terrain you are rendering is only 4082x4082(256 components). Levels, that are outside of these 4 levels, are replaced with static meshes LOD. So it takes only 508 (256+252) drawcalls per pass to render your world of ~~32k x 32k at resolution of ~~ 0.25 meters per vertex.

Actually, you could safely use a smaller level size at the cost of having more levels to deal with.

Starting point for world composition can be found here.

To sum it up, you should rely on distant terrain being replaced by optimized static meshes for huge world rendering.


Lastly, I would openly question your need to have such high resolution coupled with requested world size. Maybe you should rethink if you really need it.

Thanks a lot for the answer. I didn’t know that the world composition tool was generating static meshes lod.
Concerning the high resolution, 25 cm is not that high res. If you want to paint a small narrow path, it’s already the minimum.But to be honest this is not a problem at all as long as you have a descent lod system which seems to be the case. I was not aware of the possibilities you have with the world composition tool. Because in this case we can already switch to static mesh lods after 1km or even 500 meters. We will make some quality test.
Anyway thanks a lot for the answer, it will help.

You’re welcome.
Automatic static mesh LOD generation for terrain without need for Simplygon license was introduced in 4.8 I think.

The resolution you are mentioning is roughly two times higher than in any shipped open-world titles so far, at least to my best knowledge. That is why I brought your attention to it. But It is a topic for separate discussion. Don’t forget to mark the question as resolved, if the answer above is sufficient.
I’m farming karma ツ

The 25cm resolution is already 2 times lower than the last Open world game I made 5 years ago :slight_smile: where we were using 12.5 cm for the resolution, and it was not a problem at all.
Of course it’s only for the first lod. If your loding system and streaming system is working well, it’s not a problem at all.
But anyway thanks for the answer.