0

我正在使用 LWJGL 为 opengl 中的游戏编写 3d 编辑器。我只希望编辑器在需要时渲染。但是,如果您只渲染一次并继续调用Dislplay.update()图像故障,并且如果您只是Dislplay.update()偶尔调用而不是在 while 循环中调用,则程序将停止响应并且 Windows 将其关闭。有谁知道这是为什么或解决方法?

4

1 回答 1

0

在玩了一会儿之后,我自己想通了。每次更新显示时,它都会交换缓冲区,因此要么在每秒更新一次时手动交换缓冲区,以便它继续使用相同的缓冲区,要么渲染两次;每个缓冲区一次。
例如,如果你有一个 render() 方法来渲染你的图像,你可以这样做:

render();
Display.swapBuffers();
render();

然后您将正常更新显示。

于 2011-07-14T16:54:51.490 回答