Why sometimes the result of local obstacle avoidance is a dead end?

The local obstacle avoidance is very good in most cases, but sometimes the wrong path is generated on the edge of narrow roads and walls, you can see the direction of the progress in my screenshot.

The result is that one side is the wall that can’t walk, and the other side is other colliders, and finally it gets stuck in place and keeps trying to pass.

Do I need to set any parameters? My solution is to calculate in advance whether the target point given by local obstacle avoidance is feasible, and if it is not feasible, I will not go. Is there a better solution?

My RVOController and Character Controller have the same radius configuration.

6666

5555

Hi

The local avoidance only considers local information. It doesn’t do any high level path planning around obstacles. It just looks at what seems to be the best thing at the moment. Sadly this does mean that agents can try to move in directions where, on a larger scale, they won’t actually be able to reach the goal. I’m guessing the other agent is locked?

Yes, the other agent is not in pathfinding.
So can I assume there is no solution to this situation?

Not when only using local avoidance. For it to plan a path around an obstacle, that obstacle needs to be part of the navmesh.