in my historical open world RPG game I want the map to cover the location where a series of battles took place. To get realistic maps I will download heightmaps from terrain.party or tangram.
I want the map to keep a 1:1 scale. For this I contemplate two options:
1- 1:1 scale by 1:1 size: this means that the map would actually be 50 square km in absolute value.
2- 1:1 scale but with a reduced size. Basically, make everything little. Make the characters little, the objects little, and the map little. So it keeps the proportion but in absolute value it measures much less than 50 square km. I wonder how much could I reduce everything…?
In any case, I guess I would still have to use world partition. I have been looking into it but I don’t quite understand it. Could I define what LODs do I want for the partitions that are far away from me? Or to not render at all until I’m at a certain chunk of distance? When I download mmy height map, do I have to tweak it before importing to unreal? Or it gets partitioned automatically?
Do it other way around. Get some demo project with huge map in unreal.
Load it see how your PC can handle it. Find biggest map you can work on with your hardware. Or buy NASA computer and go nuts.
But it really all depends on minimum required hardware you want it to run with decent FPS. So determine size of map this way.
Scale does not matter do it 1:1 with level streaming it should work. With int32 you have -2,147,483,647 to +2,147,483,647 so 2*2,147,483,647 cm, ie 2,147,483 m, or 2,147 km in one direction (for coordinates). So your 8x8 km is tiny compared to it.
Great app for doing heightmap is GAEA, can add really nice detail and alpha maps for vegetation, wetness, sand etc.
I’m not an expert in this and I think I’m not understanding what you said.
Could you tell me if my PC would stand it?
My PC has 32 gb of ram, processor 12th gen intel core i7-12700H 2.70 GHz, OS of 64 bits with x64 processor, GPU Nvidia RTX 3070 Ti with 8gb of vram.
I want a “regular” PC to be able to run the game at 60 fps. I don’t know how to specify “regular” tho. Maybe 1000$?
I still don’t get the part of level streaming or int32 (i guess this is world partition?). What would be the best option for a ~50sq km map performance and quality-wise? I thought that the maximum I could get as you said was 8x8, but is this refering to a single quad or to the whole map?
I read that with world parition we would name each quad something like x_y to denote the position that they occupy in the overall map. This means that each of these quads can be 8x8? Also, using 8x8 instead of 4x4 or any other what advantatges does it have?
Finally, scaling down the map making everything little, but also making all the items and characters little would be better for performance or for the weight (gb) of the project?
Edit: this GAEA stuff, if I want a decen quality I have to pay from 99$ to 199$, so nope. Also the free version does not create chunks.
Yes your PC would be about average (or minimal specs) when you finish such game in some years.
Quads and size of landscape does not matter, you can always scale that actor up or down, it matters only for how detailed landscape is.
Level streaming is now (5.2) automatic, just create level with it enabled. Scaling does not affect performance.
So load some big demo maps with streaming, see how much detail you can put in map. Find heightmap for terrain you want, get some application to add erosion and fine detail, and you have start for map.
and 50sq km is 7km x 7km. I think that city demo (matrix) is about that size, so load it and see how it runs on your PC.