其实我不太明白你究竟想要什么……
如果只是返回zero或者B的话,我只需要判断AB方向就可以了,何苦还要计算旋转呢?
判断方向很容易,可以使用
Vector3.Angle()
靠拢的话,有这样一个函数
public static Vector3 RotateTowards(Vector3 current, Vector3 target, float maxRadiansDelta, float maxMagnitudeDelta);
第一个参数是原向量A,第二个是目标向量B,第三个是角度,第四个设置成0.0f就可以了。
(当然,A,B都是单位向量的话。)
但是这个函数看起来是这样的意思,我并没有实践过。
可参考:http://docs.unity3d.com/ScriptReference/Vector3.RotateTowards.html