Download

Script generating my own heightmap tiles for open World Composition, unsure about tile dimensions

I’m building an streamed open world of around 90x90km. Bit flexible here, can be from 80 to 100 really.

Based off real-world elevation data but not to scale and I’m using a source of 30m resolution to generate my own 1m resolution tiles with noise/interpolation/etc. Not using world machine pro, scripting this myself as I don’t need any of its fancy features (erosion etc) and for the fun of it.

(I can freely strip-off or include more or less land to the northern and eastern border of the map so I’m very flexible with how big the world will be and how to fit how much data cleanly into how many tiles at whatever resolution.)

Now assuming I want to have between 10x10 and 12x12 tiles, each around 8x8km with 1m resolution, what’s the neatest exact tile resolution to pick. A good “standard resolution” in a non-UE4, non-tiled scenario would be 8192x8192px of course. But in the docs I see the number 8129 mentioned while the UE4 Landscape creation tool (for say creating a simple non-tiled new landscape) ends up with 8161 if I push the sliders to the max.

So first question, if I want to keep standard landscape scale (X100, Y100) and thus have an exactly 1m resolution in-game without losing or compromising/artifacting certain height points, do I generate my tiles in 8129 or 8161? As I have full control over the tile generation, I want to pick the native/cleanest number here so UE4 will take all heightpoints at a clean 1m resolution.

Secondly, adjacent tiles are supposed to share identical height points at their edges. I can do that in my script, but should that add 1 to the desired/native/cleanest resolution to be generated (ie 8129 becomes 8130, 8161 becomes 8162) or not? Obviously I can generate tiles in any resolution I desire.

Lastly, performance matters more than “epic draw distance”. In this kind of world setup, really the world should foggily fade out already at around 2-3km distance whether at ground level or in the air (player won’t be higher than 2km at any point). So only between 1 and 4 tiles would ever be loaded if I have individual ~8x8km tiles. But per-landscape 8x8km is probably the least performant setup. Would I better off generating say 2x2km tiles or 4x4km tiles, what kind of component/section/quads/etc setup would be the most performant considering this specific world context in your opinion?

Thanks so much for your thoughts, fellow UE4 Open World aficionados =)

I’m also working on a very large map, though I am using World Machine, but I am having trouble figuring out how to best import it to UE4. What tutorials and advice I have been able to find all talk about using the landscape system, but the only example of a large world is the Kite demo, which doesnt use landscapes at all, and only has a small number of maps being streamed.