I’ve got a couple of questions about NavMeshes I hope someone with more experience can answer.
So, I am using a recast-NavMesh and my levels are highly procedural. Lots of props get placed randomly after the map was loaded, so the NavMesh has to be dynamic and adjust at runtime.
-
Is it possible to make the NavMesh update as quickly as possible and freeze the simulation until it’s done, instead of having it update asynchronously in the background? Because after I placed random geometry all over the level, the NavMesh isn’t any good until it has updated and I would like this to happen before the player starts playing.
-
Is there a way to serialize and deserialize NavMesh-data? I mean, since I can’t save a runtime-modified level or actor to file, I would have to manually save the data in some place and use it to initialize the NavMesh.
-
I need my AI-pawns to have different pathfinding behavior. I just had a quick look at NavMesh modifying volumes and the possibilities seem rather limited. I guess an “obstacle” volume would be ok for me, but I need it to be relevant only to some pawns and not to others. Example: a fire elemental doesn’t mind stepping over burning hot surfaces, while other pawns will. So, can I use obstacles selectively here? Even better than an all-or-nothing type of obstacle would be a weighting/cost system, if there is one.
-
Is there a way to make NavMeshes work with moving geometry? Think about a large moving platform that serves as some kind of bridge. When I placed a moving platform like that in my level, the NavMesh just constantly updated that area without ever producing something usable.
I know that’s a lot of questions
Would be really great to get some answers.