Hello and welcome to this weeks Dev Diary!
Unfortunately, while tending for my wife while she has been sick, the flu catched up with me. Despite every sensible precaution (not involving hazmat suits or rubber gloves), We have both succumbed to bed rest, doing our best to just being able to prepare food and help each other. Luckily my wife started to feel much better late last week and was able to help me through my worst phase. but because of this, yet again, I didn't manage to complete my planned agenda for the week.
How Ever
Before getting sick, I did manage to try out if it would be possible to make tiles of land, with a heightmap resolution of 4096, but it turns out, that trying to make such a high detailed landmass with just 16GB RAM, is a stretch to say the least. My system's whole Pagefile filled to the brim (64GB) and the RAM was screaming for help (16GB), after which Unity crashed. I could try to increase my pagefile to something much larger temporarily, but having only 512GB SSD to support my OS and all the essential programs, there is not much room to raise the Pagefile permanently, requiring to switch it back and forth when ever needed to. Since Pagefile on SSD still offers much slower operations than purely running from RAM, relying on the larger Pagefile could only slow down the whole operation in general and make the system more prone for software crashes.
In this light, it could be more sensible to lower the resolution overall. Another possibility would be to manually select, which sections should have the full resolution heightmap, and which sections could manage with the much lower resolution heightmaps, saving system resources where ever possible. By doing this optimization manually, gathering all the required pieces together would take more time and effort, let alone demand much more work hours to later expand the map, sector by sector. There is Automatic terrain mesh optimizing options also, but I haven't yet tried them out and by the description, even then they might need cherry-picking the most suitable terrain tiles to be optimized, in order to not distort the parts, where more detail is required, like steep complex shaped cliffs.
I have also used this time to shape the setting of the game more thoroughly, but it is still too early to discus about that any further.
After Thought
There are many ways to approach learning new things, and one of them is to "try and learn". It is very different from just following textbooks meticulously, which is better suited approach for some, but also bears a risk, that it might also narrow ones perspective. The ability to search for answers and guidance, has been pointed out to being the new important standard for being literate, as information changes really fast these days and opens up new possibilities to achieve your vision, even if it is on a scale that one person has newer been able to achieve on their own - like what minecraft did with it's progressive environment generation, when procedural world generation hadn't gained as much traction in the public yet.
Also, If one has a powerful computer with plenty of RAM, one could easily create a very detailed and huge map with Unity or Unreal Engine and optimize it semi-automatically and/or by hand from there on. There is plenty of proprietary engines as well, like the Decima Engine used in Death Stranding, which is capable of running a near photo-realistic game with Mid-Tear computers, thanks to a large part to a technique called "photogrammetry", but also thanks to Decima Engine's ability to handle much larger heightmap detail levels than Unreal and Unity engines.
With the latest "The Heretic" tech demo, Unity has been shown to be capable to be one of the game engines for near photo-realistic games. I'm eagerly waiting to see, what I'll be able to achieve with Unity in time.
Conclusion
This is it for this weeks Dev Diary. Thank you for tuning in, and I'll see you on the next one!
You can check out every possible mid week announcements about the project on these official channels;
• YouTube • Facebook • Twitter • Discord • Reddit • Pinterest • SoundCloud • LinkedIn •