我有一个关于陀螺仪默认位置的问题。我在女巫中创建了一个游戏,你通过移动手机(使用陀螺仪)将太空船向前、向后、向左和向右移动。我的问题是我必须像图 1 那样水平握住手机。如果我像图 2 那样像往常一样握住手机(与地面成约 60 度),船就会沉没。有谁知道如何更改陀螺仪的默认位置,这样我就可以正常拿着手机和操纵船了?如果我的手机保持在 60 度,我希望船静止。否则,它会移动到标题方向。
我的代码:
using UnityEngine;
using System.Collections;
[System.Serializable]
public class Boundaryy
{
public float xMin, xMax, zMin, zMax;
}
public class PlayerControll1 : MonoBehaviour {
public float speed;
public float tilt;
public Boundaryy boundary;
// Use this for initialization
void Start () {
Input.gyro.enabled = true;
Screen.sleepTimeout = SleepTimeout.NeverSleep;
}
void FixedUpdate() {
float xi = Input.gyro.userAcceleration.x;
float yi = Input.gyro.userAcceleration.y;
Vector3 movement = new Vector3 (xi, 0.0f, yi);
rigidbody.velocity = movement * speed;
rigidbody.position = new Vector3
(
Mathf.Clamp (rigidbody.position.x, boundary.xMin, boundary.xMax), 0.0f,
Mathf.Clamp (rigidbody.position.z, boundary.zMin, boundary.zMax)
);
rigidbody.rotation = Quaternion.Euler (0.0f, 0.0f, rigidbody.velocity.x * -tilt);
}
}
如果有人知道如何做到这一点,请帮忙!:)