Unity 中的旋转问题?
Issue with rotation in Unity?
我正在尝试使用脚本围绕 Y 轴旋转我的游戏对象:
rotateDir = Input.GetAxis("Horizontal");
rb.AddRelativeTorque(Vector3.up * rotateDir * rotateForce);
但是我的游戏对象开始倾斜(最后一张图片):
我已经更改了碰撞器,检查了我的代码(我看不到任何错误)<但它仍然无法正常工作。有人可以帮助我吗?谢谢
在unity中旋转gameObject的方式有很多种。但最好的旋转方式是使用 EularAngles
// Transform.eulerAngles represents rotation in world space
void Update() {
currentEulerAngles += new Vector3(x, y, z) * Time.deltaTime * rotationSpeed;
//apply the change to the gameObject
transform.eulerAngles = currentEulerAngles;
}
private void Update()
{
RotateTowardsYDirection();
}
public void RotateTowardsYDirection()
{
////transform object to rotate with some rotation factor value
objectToRotate.Rotate(0, Input.GetAxis("Horizontal") * yRotationFactor * Time.deltaTime, 0);
}
我正在尝试使用脚本围绕 Y 轴旋转我的游戏对象:
rotateDir = Input.GetAxis("Horizontal");
rb.AddRelativeTorque(Vector3.up * rotateDir * rotateForce);
但是我的游戏对象开始倾斜(最后一张图片):
我已经更改了碰撞器,检查了我的代码(我看不到任何错误)<但它仍然无法正常工作。有人可以帮助我吗?谢谢
在unity中旋转gameObject的方式有很多种。但最好的旋转方式是使用 EularAngles
// Transform.eulerAngles represents rotation in world space
void Update() {
currentEulerAngles += new Vector3(x, y, z) * Time.deltaTime * rotationSpeed;
//apply the change to the gameObject
transform.eulerAngles = currentEulerAngles;
}
private void Update()
{
RotateTowardsYDirection();
}
public void RotateTowardsYDirection()
{
////transform object to rotate with some rotation factor value
objectToRotate.Rotate(0, Input.GetAxis("Horizontal") * yRotationFactor * Time.deltaTime, 0);
}