A* Pathfinding Project

Local avoidance issues on Recast graphs


#21

Thank you for those instructions Aron, that was really helpful. The tricky part was indeed to keep RVO working with everything else and still being able to rely on .pathPending.

I had issues at one point with RVO’s Agent Time Horizon, which I had set to 4 thinking it would turn out better but that’s really not the case. Any value above 1 results in a LOT of unseemly jittering before the agents even reach each-other.

Since I’m using your code snippet, does that mean that the Seeker component is not necessary anymore?


#22

Yeah. If you have a value of 4 that means the agent will try to avoid collisions 4 seconds into the future. Agents can move quite a distance in 4 seconds and their trajectories are often not very predictable over that time frame. Lower values like 0.5 to 1 second usually works better.

No, the AIPath/RichAI script will internally use the Seeker component to calculate the path. SetPath only ensures that the AIPath/RichAI script knows about the path request while it is being calculated.


#23

These improvements will be available only in the current BETA and then when it becomes a new STABLE?
Or are you going to merge them into current stable branch before that?

Also, is there any ETA on the 4.3 stable?

Thanks :slight_smile:


#24

4.3 stable is unfortunately not coming very soon. There are quite a few things that are broken in it and I also have to wait until both Unity 2019.3 and Burst are stable.


#25

Thanks for info :slight_smile:


#26

Any plans to eventually support Hybrid ECS or have something that could integrate with Pure ECS with some setup? There have been some pretty incredible Pure ECS feats on the forums https://forum.unity.com/threads/unity-ecs-and-job-system-in-production.561229/


#27

@thim

In the current beta the local avoidance system uses burst and the job system internally. The lightweight example scene also uses burst to draw all the agents, so it is also usable from ECS. It doesn’t use actual ECS entities though, but a system can access all the local avoidance data.