LWJGL我的相机类停止旋转

时间:2013-08-29 23:21:08

标签: java opengl 3d lwjgl

我正在为我的3D游戏编写一个Camera类。我实现了一种在达到360后将y旋转重置为0的方法,但由于某种原因,在我旋转3或4次之后,我的角色才停止转动......我不明白为什么!以下是我认为问题正在进行的源代码:

        mouseX = Mouse.getX();
        mouseY = Mouse.getY();

        float finalMouseX = (mouseX - previousMouseX);
        float finalMouseY = (mouseY - previousMouseY);

        if (rotation.y + finalMouseX >= 360) {

            rotation.y = rotation.y + finalMouseX - 360;

        } else if (rotation.y + finalMouseX < 0) {

            rotation.y = 360 - rotation.y + finalMouseX;

        } else {

            rotation.y += finalMouseX;

        } 

        if (rotation.x - finalMouseY >= -89 && rotation.x - finalMouseY <= 89) {

            rotation.x += -finalMouseY;

        } else if (rotation.x - finalMouseY < -89) {

            rotation.x = -89;

        } else if (rotation.x - finalMouseY > 89) {

            rotation.x = 89;

        }

0 个答案:

没有答案