RVO avoiding Cliffs / Edges

The RVO Controller does an amazing job in avoiding every other RVO Controller. But they are pretty dumb, when it comes to move over terrain in an intelligent way.
Is there a way or a workaround or design where the rvo controller do not fall of cliffs?

I am thinking about extending the rvo controller to not move over edges, but the ideal way would be to include this issue as a factor in the initial rvo calculation. Is there some tutorial about how the whole local Avoidance thing works? I do not want to dig through the whole code to be able to make some proper changes.

Best regards,

I do see that there is the RVONavmesh.cs component that make RVO controller stay on the graph and there is a ToDo that states “Support for grid based graphs will be added in future versions”.

What is the status of this ToDo? The RVOController in its current state without the guarantee that it will not fall off a cliff is pretty useless.

Best regards,


Try the latest beta.
The RVONavmesh component has been fixed there.


does this work for GridGraphs now then?

No. Sorry. Not for grid graphs yet.
But you might be able to use RVONavmesh equivalent for GridGraph (updated : code inside)