Unity3d transform.LookAt和Quaternion.LookRotation正在翻转实体';什么时候看?
我需要帮助,请,身体是翻转,即使它是看球员,我希望它是在正确的旋转时,看 这是我的密码!:Unity3d transform.LookAt和Quaternion.LookRotation正在翻转实体';什么时候看?,unity3d,Unity3d,我需要帮助,请,身体是翻转,即使它是看球员,我希望它是在正确的旋转时,看 这是我的密码!: Vector3 direction = Player.position - transform.position; Quaternion rotation = Quaternion.LookRotation(direction); transform.rotation = rotation; 你也可以看我的视频,这样我就可以给你解释清楚了! 请帮忙 请看 API中描述的
Vector3 direction = Player.position - transform.position;
Quaternion rotation = Quaternion.LookRotation(direction);
transform.rotation = rotation;
你也可以看我的视频,这样我就可以给你解释清楚了!
请帮忙
请看 API中描述的这两种方法都将旋转对象,使其向前向量指向目标。。。您的三维模型似乎“错误”,并且默认情况下其正向(Z)向量没有指向前方 如果我在视频中查看你的模型,我可以在旋转Gizmo中看到默认情况下你的模型是旋转的 看起来向前(Z)向量指向上,其右(X)向量指向前,其上(Y)向量指向左 这意味着为了正确定向,需要在局部X轴上额外旋转-90°,在局部Z轴上额外旋转-90° 您可以通过添加所需的旋转来修复此问题,以再次使对象直立,而不是像
transform.LookAt(Player.position);
transform.localRotation *= Quaternion.Euler(-90, 0, -90);
waitt我非常感谢你的想法,它确实帮助我从你的建议中调整了一些东西:)。。。矢量3方向=新矢量3(Player.position.x,transform.position.y,Player.position.z);变换。注视(方向);transform.rotation*=四元数.Euler(-80,0,-80);这是我修改过的代码,我在理解四元数的lookat和lookrotation方面有点困难,但是谢谢:)谢谢!顺便说一句,Vector3是一个
struct
,因此您可以简单地使用Vector3 direction=Player.position代码>;)不需要通过构造函数