I’m currently working on a CTF map for the new Unreal Tournament, and I’m coming up on the first release version very soon.
However, I’m a bit new to working with nav meshes, and I’ve got some best practice type concerns.
First, it should be known that I have a rather large persistent level, which contains an elaborate matinee cutscene and some fancy special effects. I then have the remainder of the map’s assets distributed among eleven streaming levels. It’s come time to finalize the map’s nav mesh, and I’m curious about the following issues:
For small levels, I’ve always used a single NavMeshBounds object to encapsulate the entire level. However, due to the size of this level, the bounds of such a box are 35000 x 50000 x 10000. Building navigation on a box that size takes an immense amount of time; so much time that I usually get impatient around the 35 minute mark and attempt to close the editor (which always just crashes not only the editor, but my entire computer). Am I better off just allowing this to complete? I know I need a better computer… but, ****! The editor is completely unresponsive during this process (seems frozen at Building Navigation (1).)
An alternative would be to split up the NavMeshBounds, and use multiple volumes to more tightly cover my intended surface area. Is this a viable workaround, and would it have any noticeable impact on navigation build times?
If using multiple volumes is viable, my solution would likely end up requiring quite a few volumes. Is it possible to place NavMeshBounds objects into streaming levels, or must they be part of the persistent level?
I’ve gone around the map and ensured that only intended objects affect the nav mesh, giving me a mostly clean build all around. However, nav mesh on terrain is awful! (It’s also one of the reasons I think my build is taking so long…). Is there a way to optimize terrain for nav mesh builds? Just go in and smooth it out, I guess?
Any insight on the subject would be great! Thanks in advance =p