Revisiting the world landscape (Patreon)
Content
Last year we spent a lot of time exploring how to best create a world that is both large enough to house several kingdoms and world regions at reasonably realistic scale, yet detailed enough to where you can walk around on the ground without everything looking low-poly, and simultaneously not using a terabyte of storage just for the terrain data. Our desired world size was several orders of magnitude larger than the max size for the native landscape system in the game engine, so we had to get creative. In the end we still decided to go with the standard approach of using an overworld map from which you load into separate regions (like in for example Mount & Blade and Total War, but with larger maps), but we recently decided to revisit this area to see if we missed anything that would make it feasible to have everything as one seamless, huge world.
In some older sneak peeks you can see one of the approaches we explored last year, where the terrain stretches all the way to the horizon and you could seamlessly fly to the edge of the world. With this method, most of the terrain data is generated at runtime but with hand placed and reusable "stamps" for mountains and other features, which means it doesn't need to store much data at all. The downside is that it doesn't look as good as when the terrain is fully pre-computed, which we reaffirmed when revisiting it this time around. We used the landscape in the early access as a baseline to compare against and the gap in visual quality was simply too wide.
There is also another approach with a lot of potential that we will revisit next week, it's a bit complicated to fully explain here but it basically boils down to optimising the terrain geometry based on the surface shape so you only have a lot of data where it's needed, which could reduce the memory footprint by up to 99%. The memory needed to just store the terrain data is one of the biggest challenges because the world needs to be absurdly large (by game standards) or it will feel too small for several kingdoms and flying. I'm talking at least 1000 times the size of Skyrim-large (in terms of area, 256x256 km vs 8x8 km). So let's say the Skyrim terrain takes 1 GB to store, then the Dragontwin terrain would take an entire terabyte - that's not gonna work. With this method we could reduce it to more reasonable sizes. It comes with some other trade-offs though but it's worth giving it another shot.
Having a single seamless world is not something that is required for the game to play as intended, but after all this testing and having glimpsed what it would be like, it is definitely something to strive for. There is something magical about seeing mountains on the horizon and knowing you could fly all the way there if you wanted to, or looking out over the ocean and wondering if there is another continent you can reach on the other side. Even if we determine that it's still not feasible this time around, we will probably return to this area in the future to test new ideas.