Hi,
As part of our required development, we are required to develop a system for a huge sandbox world of 20 kilometers in size (as a maximum). As our target hardware has limited ram we need to solve the following issues so any practical advice is welcome:
-
we need an easy way for artists to build detailed content in the world, such as towns, forests, etc. Would using LoadLevelAdditive be a solution for this with a low thread priority for loading, or are Asset Bundles better? What are the pros and cons? We would need occlusion culling and navmesh support without a doubt. Things would also contain their own lightmaps and textures, and a lot of sound files per area.
-
we also need to figure out how unity can unload previous assets. We would like to be able to clear ram and make way for new content. Is there a good way to unload this data without the unloading taking a performance hit? As far as I know unity won’t unload very well, information is unclear here. Also, can background loading be cancelled?
-
Any large-seamless-world management tips you can provide will be of great help.
-
This is not multiplayer.
Thanks!
Summary
- need navmesh, umbra, lightprobes
- need to manage ram, navmesh, umbra, lightprobes performance
Currently suspect unity is not capable of doing this efficiently. Will try streaming only textures and sounds. First. Suspect larger worlds will cause navmesh to be considerably slower, lightprobes lookup to be slower and umbra to be slower.