| 3D项目用transform.LookAt就可以简单实现朝向,2D的话就得自己手动来了。目前经过测试有两种方法可以直接使用。
 通过SignedAngle方法,求出第一和第二参数之间的角度,第三个参数为环绕的轴,度数范围在-180~180之间,顺时针为正逆时针为负。Vector3 v = target.position - transform.position; 
	v.z = 0; 
	float angle = Vector3.SignedAngle(Vector3.up,v,Vector3.forward); 
	Quaternion rotation = Quaternion.Euler(0, 0, angle); 
	transform.rotation = rotation;
 直接求得Y轴到目标向量的四元数Vector3 v = target.positio - transform.position;
v.z = 0;
Quaternion rotation = Quaternion.FromToRotation(Vector3.up, v);
transform.rotation = rotation;
 |