public static Vector3 AngleLinearSmooth(Vector3 source, Vector3 dest, float value) { dest -= source; if (!dest.AngleClampAndNormalize()) { return(Vector3.Invalid); } dest /= value; if (!dest.AngleClampAndNormalize()) { return(Vector3.Invalid); } dest += source; if (!dest.AngleClampAndNormalize()) { return(Vector3.Invalid); } return(dest); }