unity 手机实现最基本的VR

2021-09-13  本文已影响0人  安宇辛

实现原理:相机随着陀螺仪旋转,就可以用手机模拟vr头盔看到的世界

using UnityEngine;
//相机随着陀螺仪旋转
public class cameraRotation : MonoBehaviour
{
    void Start()
    {
        if (Application.platform == RuntimePlatform.Android)
        {
            Input.gyro.enabled = true;//打开陀螺仪权限
            Screen.sleepTimeout = SleepTimeout.NeverSleep;
            Input.gyro.updateInterval = 60f;
        }
    }

    void Update()
    {
        this.transform.localRotation = CameraRotation();
        //this.transform.localRotation = Quaternion.Slerp(transform.rotation, CameraRotation(), 0.2f);
    }

    Quaternion CameraRotation()
    {
        Quaternion input = Input.gyro.attitude;
        input = Quaternion.Euler(90, 0, 0) * (new Quaternion(-input.x, -input.y, input.z, input.w));
        return input;
    }
}

上一篇 下一篇

猜你喜欢

热点阅读