Getting RVO Influenced Path


I have an application where I would like to get the complete RVO influenced path, as soon as it’s available. While I realize that the complete path might change over time depending on other agents blocking the path, I would monitor the path data structure for updates that take into account the new path that re-routes around the other agents.

I’m encountering a problem where the path data that I’m seeing doesn’t take into account the RVO influence; the points provided simply go through the other agent. For example, in a 2D environment, if I have an agent start at (0,0) targeting (10,0), and another agent starting at (10,0) targeting (0,0); the path data returned never deviates from Y = 0, but the agents go around one another deviating from Y = 0.

As per my setup, I took the Example16_RVO 2D example, and reduced the number of agents to 2. I also swapped out the RVO Example Agent component on each agent, replacing it with the AIPath component. I then staged an experiment where the two agents are required to move to new goals which cause them to reroute around one another. I tried monitoring the path variable for both the Seeker component and the AIPath component, but the list of points provided never match the actual path the two agents take. The paths provided are a straight line the whole time. For this test, I increased the Agent Time Horizon from 2 to 5.

As I’m new to using the A* Pathfinding Project, I was hoping that someone could help point me in the correct direction? What variable should I be looking at to get the RVO influenced path, if it does exist?



RVO doesn’t modify the path in any way. RVO is an algorithm that is applied at every timestep to modify the velocity of the agent. The only way to determine how exactly it will move is to run the simulation. You can trace the value of transform.position as the agent moves.