How to build navmesh for dynamically sized procedural level

I’ve had a quick look at the code and it seems we don’t support runtime navigation bounds scaling. Here are some thing you can do:

  • you can have one big volume encompassing the whole possible generated level space. This should not have a big impact on navmesh generation time.
  • you can expose UNavigationSystem::OnNavigationBoundsUpdated and call it with the scaled ANavMeshBoundsVolume. This should work, but I’m not 100% sure it will. Let me know if it does if you decide of this route.
  • you could try streaming NavMeshBoundsVolume in. Again, not sure if it will work since we don’t use this approach internally.

Cheers,

–mieszko