Currently, the code uses a small-angle approximation to rotate the current velocity vector toward the weighted average velocity vector. As the angle between the two vectors increases, this approximation becomes less accurate. Update the logic to use the appropriate rotation about the vector that defines the plane containing the two vectors.
Currently, the code uses a small-angle approximation to rotate the current velocity vector toward the weighted average velocity vector. As the angle between the two vectors increases, this approximation becomes less accurate. Update the logic to use the appropriate rotation about the vector that defines the plane containing the two vectors.