Local Avoidance + Targeting location at another agent's location

I’m having an issue related to RVO - when one agent has a targeted position “at” another agent’s location, it will cause them to circle around that agent endlessly.

Is there some way to ignore RVO for a specific agent if their target position is within the radius of that agent? This would of course result in npcs overlapping, but that’s better than having npcs endlessly circle and not be able to arrive at their destination.

Thank you!

1 Like

There are 32 different layers in RVOLayer, put the specific agent in a specific RVOLayer and other agents in another RVOLayer and change the collidesWith accordingly.
for example, the specific agent’s layer is RVOLayer.Layer30, the other agents’ layer is RVOLayer.DefaultAgent, then excludes RVOLayer.Layer30 from the other agents’ collidesWith and RVOLayer.DefaultAgent from the specific agent’s collidesWith.

Ah, interesting idea. Basically detect the agent is near other agents, and put them on a separate layer. I’ll try this out. I could see it get kinda weird, with different agents being near other agents, but it could work…