我正在使用Unity3D创建一个程序,其中玩家向目标发射箭头。什么是确保箭头在旋转中飞行的最佳方法,旋转取决于它的运动角度? (即箭头朝向上升,下降时向下)
我已经查看过 transform.LookAt 和 Quaternion.lookRotation 函数,但现在确定它们的应用方式。这是指示箭头速度的代码:
newArrow.GetComponent<Rigidbody>().velocity = new Vector3 (5*(transform.position.x - mousePos.x), 10*(transform.position.y - mousePos.y), 0);
答案 0 :(得分:0)
设置刚体的约束。在您的情况下,它应该只围绕x轴旋转,以便它向上然后向下。
对于其余的,你只需在throw上设置初始旋转:
newArrow.transform.rotation = Quaternion.LookRotation(velocity);
这可能需要根据您的模型初始方向进行一些调整。