RTS Unit can handle limit of navmesh


My problem on this video : https://gyazo.com/ab6f5fb99595050dec74a7729f80205c

I have a very good configuration where the game work well, navmesh, RVO simulator, RVO navmesh, tile handler. On unit RichAI and RVOManager, agent time horizon at 0.5 et same for obstacle.

But why when I’m fight near the edge of navmesh, unit can handle to go to other side ?

I’m using the RTS version.


It looks like you have locked some RVO agents. That will prevent the agents behind them from moving forwards. RVO is a very local algorithm that only moves the agents towards the locally best point. In the original algorithm it assumes all agents cooperate and forcing agents to stand still (locking them) may cause the agents to get stuck trying to move past some other locked agents.
If you want to prevent the agents from moving but still allow other agents to move past them you could move them to another RVO layer and set the avoidance masks to the appropriate values (see the RVOController script).

Hi Aron,

First , thank for the huge work on A* and to take time to answer everyone on this forum.

I locked the RVO like on your example 18. I have no computer today then I can’t test to only remove that line to test the simulation.
More, we are working on an online RTS , then unit of enemy are locked , because each player define position of their unit. We really need this feature of avoidance locked RVO.

I’m not sure to understand , if I change the RVO layer then the unit will go through ally no ?

On this thread you are talking about grid for local avoidance “clever updating” . Can you be more specific ? I would love to test it and compare to navmesh for our RTS (like Warcraft gameplay)

Hi, @aron_granberg

I have test without locked the rvo, the result is uggly.
I have also test to change layer , but unit who go through another one isn’t possible for me. Since online enemy will be locked every time.

Do you have time to explain the perfect setup for RTS and grid graph ?


Wait, I thought you were using a recast graph?

It really depends on the kind of movement you want in your game. Did you try the RTS beta and checked if those locked RVO agents worked better for you?