Vector3.Lerp funny snapping/reversing

I’m using Vector3.Lerp to smooth a cameras rotation which follows a game objects rotation, and it seems to reach a threshold and then snaps around on the other way, I assume this is because its closer the other way.

Is there a way to stop this ?

Hope I’ve explained well enough.

So, Vector3.Lerp is for Linear interpolation for Vectors which means you are giving it two vectors and speed and it outputs a new vector. Now Rotation is based on Quaternions so there values are not the same.

Basically you cant use a vector3 for rotation.

you would want something like this for smooth rotation:

transform.rotation = Quaternion.RotateTowards(transform.rotation, targetRotation, rotationSpeed * Time.deltaTime);