使用lwjgl调整窗口内容的大小

时间:2013-06-28 14:54:16

标签: java opengl lwjgl window-resize

我正在尝试在调整窗口大小时调整显示内容。这是我的代码:

        if (Display.wasResized()) {
            this.width = Display.getWidth();
            this.height = Display.getHeight();

            GL11.glViewport(0, 0, this.width, this.height);
            GL11.glLoadIdentity();
            GL11.glMatrixMode(GL11.GL_PROJECTION);
            GL11.glLoadIdentity();
            GL11.glOrtho(0.0f, this.width, 0.0f, this.height, 1.0f, -1.0f);
            GL11.glMatrixMode(GL11.GL_MODELVIEW);
            GL11.glLoadIdentity();
        }

当我使用它时,窗口的内容不会调整大小,只会向原点移动。有没有办法让内容实际调整大小?

1 个答案:

答案 0 :(得分:1)

重绘场景。 OpenGL不是场景图。它“仅仅”是您在操作系统提供的纸张上绘制的铅笔。一旦你画了一些东西,OpenGL就不记得了。

BTW:你既不应该在窗口调整大小处理程序中设置视口大小,也不应该设置投影矩阵。您可以在绘图功能中进行准备,就像清除帧缓冲区一样。