Answers for "LookRotation Vector3 is Zero, Yet Slerp Still Rotates?"
http://answers.unity.com/questions/1232710/lookrotation-vector3-is-zero-yet-slerp-still-rotat.html
The latest answers for the question "LookRotation Vector3 is Zero, Yet Slerp Still Rotates?"Answer by ScaniX
http://answers.unity.com/answers/1232726/view.html
See https://docs.unity3d.com/ScriptReference/Quaternion.LookRotation.html
You actually pass a forward vector into the method. Instead of crashing with your invalid vector, it seems to fall back to some default (probably Vector3(0, 0, 1)) and return that look direction instead. And that is the rotation you get.
If your character transform has a forward vector like Vector3(1, 0, 0) that would result in a rotation of 90° around the world y-axis.
Don't you get an error in the console? The documentation says: "Logs an error if the forward direction is zero."Sun, 21 Aug 2016 21:49:13 GMTScaniXAnswer by LK84
http://answers.unity.com/answers/1232725/view.html
Have a look at the definition of Quaternion.Slerp:
*"Spherically interpolates between a and b by t. The parameter t is clamped to the range [0, 1]."*
So as long as your current transform.rotation is not equal to zero rotation (Im honestly not sure if you get Quaternion.identity from LookRotation(Vector3.zero)), Slerp will return a value between these two rotations.Sun, 21 Aug 2016 21:47:47 GMTLK84