OpenGl & Android:将陀螺仪旋转 90 度



所有晚上好

我正在尝试为Google CardBoard、OpenDive、vRase等设备制作3D分屏渲染视图

我正在基于gryo旋转视图,这样当一个人移动头部时,渲染的视图就会发生变化。

使用陀螺仪的值,我的视图指向地板。如果我在X的Gryo读数上加90,它是有效的,但因为值是-90到+90,所以整个事情都被搞砸了

float currentZ = (androidSensor.getRoll() ) ;
        float currentX = (androidSensor.getPitch());
        float currentY = (androidSensor.getAzimuth() );
        Log.i("TAG", "x: " + currentX + " z " + currentZ + " y " + currentY);
        //Matrix.rotateM(mCamera.mHMatrix, 0, currentY, 0, -1,0);
        Matrix.rotateM(mCamera.mHMatrix, 0, currentX , 1, 0,0);

我真的应该将渲染旋转90吗?

传感器读数未考虑设备方向。

最新更新