1
我有一個關於陀螺儀失去位置的問題。我創造了一個遊戲,通過移動手機(使用陀螺儀)移動太空飛船向前,向後,向左和向右移動。我的問題是,我必須像圖片1一樣水平握住手機。如果我像往常一樣(大約60度地面)握住手機,就像在圖片2上一樣,那麼船就會掉下來。任何人都知道如何改變陀螺儀的默認位置,所以我通常可以握住手機並轉向船舶?如果我的手機保持在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);
}
}
如果有人有線索如何做到這一點,請大家幫忙! :)