以下代码允许我通过加速计旋转我的对象。
void launch() {
x = Input.acceleration.x;
finalSpeed = liftSpeed - velocity;
GetComponent<ConstantForce2D> ().relativeForce = Vector3.right * (finalSpeed);
rotationZ += x * sensitivityZ;
rotationZ = Mathf.Clamp (rotationZ, 45, 135);
transform.eulerAngles = new Vector3(transform.eulerAngles.x, transform.eulerAngles.y, rotationZ);
}
我从中获取的代码示例:
transform.eulerAngles = new Vector3(transform.eulerAngles.x, transform.eulerAngles.y, -rotationZ);
这导致我的对象颠倒,所以我将它从-rotationZ更改为rotationZ:
transform.eulerAngles = new Vector3(transform.eulerAngles.x, transform.eulerAngles.y, rotationZ);
物体以所需的角度限制来回旋转,但是当我倾斜时,它会以错误的方式旋转。我该怎么扭转呢? IE我倾斜我的手机离开我的对象正确。我想向左倾斜然后向左转。反之亦然。
答案 0 :(得分:0)
GOT IT。我只是改变了
rotationZ += x * sensitivityZ;
TO:
rotationZ -= x * sensitivityZ;
现在它正朝着正确的方向旋转