使用手機陀螺儀,可以獲取手機的3D姿態(tài),這在開發(fā)中是很有用的。當(dāng)然現(xiàn)在的手機內(nèi)置的陀螺儀都是比較廉價的,精度不高,但是作為實驗設(shè)備看看效果還是可以的。本文將給出調(diào)用手機陀螺儀的簡單方法。
首先,我們需要在場景中添加大量方塊,作為觀察對象。

控制陀螺儀的腳本:
using UnityEngine;using System.Collections; public class gyroscope : MonoBehaviour { bool draw = false; bool gyinfo; Gyroscope go; void Start() { gyinfo = SystemInfo.supportsGyroscope; go = Input.gyro; go.enabled = true; } void Update() { if (gyinfo) { Vector3 a = go.attitude.eulerAngles; a = new Vector3(-a.x, -a.y, a.z); //直接使用讀取的歐拉角發(fā)現(xiàn)不對,于是自己調(diào)整一下符號 this.transform.eulerAngles = a; this.transform.Rotate(Vector3.right * 90, Space.World); draw = false; } else { draw = true; } } void OnGUI() { if (draw) { GUI.Label(new Rect(100, 100, 100, 30), "啟動失敗"); } } }該腳本綁定到主攝像機上,發(fā)布成apk文件,安裝到帶有陀螺儀的手機就可以了。運行后會看到,當(dāng)手機位姿變化時,方塊也會隨著變化。但是手機陀螺儀會有少許漂移。當(dāng)手機不動時候,場景中的方塊也許會有少量移動。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。
新聞熱點
疑難解答