@aron_granberg Ahhh, brilliant!!! That worked. I haven’t quite wrapped my head around what the movement plane is all about or why this causes the agents to jump. Here is what I did before you pointed this out (that was mostly working):
After making the last video I noticed that if I lowered the path recalculation rate that the Navemesh wasn’t rotating with the sphere. This made me realize that the Navmesh was not being refreshed in the in the OnUpdate(). So I changed OnUpdate() to this:
protected override void OnUpdate(float dt)
{
RefreshTransform();
base.OnUpdate(dt);
UpdateMovementPlane();
}
But this caused all the boats orientate to y.up. So I modified it again to this:
protected override void OnUpdate(float dt)
{
graph.Refresh();
interpolator.graphTransform = graph.transformation;
base.OnUpdate(dt);
UpdateMovementPlane();
}
Which worked great, and I just turned off automatic path recalculation and just called SearchPath() when setting a new waypoint. This worked great but the agents still hopped when selecting a new way point. By commenting out the updating of the movement plane in RefreshTransform() like this:
void RefreshTransform()
{
graph.Refresh();
interpolator.graphTransform = graph.transformation;
//movementPlane = graph.transformation.ToSimpleMovementPlane();
}
The boats no longer hop when selecting a new way point and I can probably turn path recalculation back on (if needed).
Thanks so much for your help, we are loving A* Pro, more so now that its doing what we want it to do.
Jacob