Dynamic Objects on a NavMesh

Dynamic Objects on a NavMesh: Is this possible ?

The DynamicGrid script is restricted to Grid Graph & Point Graph.

Is it possible to have agents avoid animated objects on a Recast NavMesh ?

Possible using the current version: no (unless using a recast graph and you like a veeery low fps).
Possible theoretically: yes.

I am working on getting it working, I have a gotten mesh cutting and polygon decomposition working on planar surfaces (no overlaps), but it will take some time until I manage to integrate it into the main pathfinding system.

Hi I am a noob on the subject of pathfinding.
I am probably mistaken, but isnt Local Avoidance used for dynamic objects??
if it’s for local avoidance, cant it be used on Recast graph?

A recast graph (or more generally navmesh based graph) stores the graph as a mesh of polygons. This is very expensive and hard to update to account for new or moved geometry. Local avoidance on the other hand represents obstacles as a series of linked lists containing points describing obstacles (which can be overlapping). Updating them is as simple as changing the point coordinates and updating an internal KDTree used for fast lookup.

Are there any news or progression on the dynamic obstacles on recast navmeshes? I am very interested in this as well, since it is much needed for the project I am working on.
I stumbled upon then video the other day.
http://www.mooncollider.com/dynamic-mesh/
This is exactly what I need. I think they are using some of the same libraries as you, if I am not mistaking. I do not know how efficient this approach is however.

Other than that, this is still a great product! Thanks for all your work.

Hi

There is progression in that area.
Recalculating recast tiles during runtime is now possible in my dev. builds. However, since C# is so much slower than C++, the performance is not that good.

Another approach I have just implemented is cutting the navmesh.
This can be used to create obstacles, however they cannot add any new geometry, only removing existing. This is however a very common case. It also has much better runtime performance, it can be done in usually 2-6 ms. Depending on the complexity of the underlaying mesh, 20 ms when there is high complexity.

Since this is not available yet in the released versions or even the dev version. You can contact me directly if you need it quickly (aron dot granberg at gmail) . Currently the cutting is not completely finalized for recast graphs, I need to add some code to save the generated tiles first.