在游戏登陆界面使用陀螺仪

作者: JervieQin | 来源:发表于2017-11-10 21:09 被阅读47次

前情

现在市面上的手游基本都在登陆界面上加上了对陀螺仪的应用,可以使玩家在转动手机时,轻微的改变视角。现在我们也来实现一下这个功能。

认识API

        //打开陀螺仪
        Input.gyro.enabled = true;
        //获取设备重力加速度向量
        Vector3 deviceGravity = Input.gyro.gravity;
        //设备的旋转速度,返回结果为x,y,z轴的旋转速度,单位是(弧度/秒)
        Vector3 rotationVelocity = Input.gyro.rotationRate;
        //获取更加精确的旋转
        Vector3 rotationVelocity2 = Input.gyro.rotationRateUnbiased;
        //设置陀螺仪的更新检索时间,即隔0.1f更新一次
        Input.gyro.updateInterval = 0.1f;
        //获取移除重力加速度后设备的加速度
        Vector3 acceleration = Input.gyro.userAcceleration;

不过暂时只要用其中一个:Input.gyro.rotationRateUnbiased

实现

public class _JoysticMove : MonoBehaviour
{
    GameObject camParent;

    //eulerAngle bound
    float xTop, xBotton;
    float yLeft, yRight;

    //eulerAngle
    float x, y;

    void Start()
    {
        x = transform.eulerAngles.x;
        y = transform.eulerAngles.y;

        xTop =x-2f;
        xBotton = x+2f;

        yLeft = y - 2f;
        yRight = y + 2f;

        //打开陀螺仪
        Input.gyro.enabled = true;

    }

    void FixedUpdate()
    {
       //获取旋转并限制范围
        transform.eulerAngles = new Vector3(Mathf.Clamp(transform.eulerAngles.x, xTop, xBotton), Mathf.Clamp(transform.eulerAngles.y, yLeft, yRight), 0);
        
    }
}

相关文章

网友评论

    本文标题:在游戏登陆界面使用陀螺仪

    本文链接:https://www.haomeiwen.com/subject/xcmmmxtx.html