RTS with wheeled vehicles and footmobiles?

Hi, I have some questions about the module, as I’m trying to assess if it’s gonna help me with the multitude of issues plaguing my project running on Unity’s builtin pathfinding. I actually already bought the module a long while ago, but haven’t started using it in my project, yet.

  • first of all, is it possible to have two different types of agents (car, person), and have them both reliably avoid each other, but still have each of them use separate navigation meshes? It is possible in Unity’s navmesh, local avoidance is very buggy, and most of the time it just doesn’t work.
  • will the local avoidance work “out of the box”? In Unity, despite having enabled all possible local avoidance options, I still find that I have to do my own raycasts to make sure the agents don’t touch each other.
  • will I be able to adjust the local avoidance for wheeled vehicles (which in my game actually behave like real vehicles, as in - don’t turn on a dime, etc.), at least to some reasonable degree? I do understand this wasn’t built to simulate cars, but if it’s at least as flexible as Unity, I’d be happy to give it a try
  • can I use my own movement script, and just get “hints” from the navmesh seeker as to which direction I should be turning in order to follow the path? In Unity you can do that, it stops the agent from forcibly moving your gameobject around the map, which lets me apply direction on my own vehicle movement script.

In short, I’d like to finally give a* a go, but I’m afraid of dedicating time to it, if any of these things end up being impossible to replicate in it.

Hi

There is no explicit support for wheeled vehicles in this package. You may write a custom movement script for them, but even so paths do not take into account how vehicles can and cannot move.

  1. If you have agents that break some assumptions of the RVO algorithm (e.g. the agents have an infinite acceleration and can move in any direction) then the obstacle avoidance will be suboptimal. The local avoidance is also tuned for “human like” scenarios, so cases where agents have a large variation in sizes may not work as well.
    1. See 1.
  2. It is about as flexible as Unity’s I think. The packages even use almost the same algorihtm for avoidance. Wheeled vehicles do break some assumptions of the avoidance algorithm however.
  3. Yes. See for example https://arongranberg.com/astar/docs/aibase.html#updatePosition and https://arongranberg.com/astar/docs/aibase.html#MovementUpdate