实现3dof功能
文章目录
- 1.前言
- 2.代码实现
1.前言
现实中手机移动,可以看到相应转动的虚拟画面,采用手机自带的惯导就可以实现,当然也可以借助手机ar的插件,比如arcore或者easyAR等。
2.代码实现
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class GyroCameraController : MonoBehaviour
{private Gyroscope gyro;// 相机初始的态势Quaternion cameraBase = Quaternion.Euler(90, 0, 0);void Start(){// 从Input中获取陀螺仪对象gyro = Input.gyro;// 开启陀螺仪gyro.enabled = true;// 获取陀螺仪的态势数据Debug.Log(gyro.attitude);}void Update(){transform.rotation = cameraBase * ConvertRotation(gyro.attitude);}// 将旋转从右手坐标系转换到左手坐标系private static Quaternion ConvertRotation(Quaternion q){return new Quaternion(q.x, q.y, -q.z, -q.w);}
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
