0

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

        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();
        }

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

4

1 回答 1

1

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

顺便说一句:您不应在窗口调整大小处理程序中设置视口大小或投影矩阵。您可以在绘图功能中做这些准备,就像清除帧缓冲区一样。

于 2013-06-28T16:36:02.423 回答