如何提高LWJGL的性能?

时间:2013-02-16 14:12:27

标签: performance opengl lwjgl

我是LWJGL的新手。当我尝试制作一个由100 * 100个立方体组成的关卡时(我使用QUADS来创建它)我的笔记本电脑上大约有8个fps。当我删除立方体的5个边并仅留下渲染顶部时,我得到10fps。怎么会这样?当我删除立方体的5面时,我期望获得5或6倍的性能。我得到的是,顶点的数量不会影响性能,因为对象的数量很大。我还创建了BLOCK类的新实例,以便为多维数据集的所有6个边存储一些随机颜色。任何人都可以帮我吗?如何大幅提升业绩? (一般只是询问。不是一步一步)。我能想到的唯一正确的事情是现在在附近采取一堆块,如果它们是相同的块(例如污垢)将它们渲染为巨大的单块,但改变它的纹理使它看起来像很多块。

1 个答案:

答案 0 :(得分:3)

嗯,一般来说,为了提高性能,不要使用glBegin / glEnd。 (我猜这是你正在使用的,如果不是,那么忽略这个答案)。这就是所谓的立即模式,并且比创建顶点/索引缓冲区然后从那些缓冲区渲染要慢得多。如果您的几何是静态的,那么在足够现代的GPU上以60 fps渲染10000个立方体应该没有问题。有关lwjgl网站here的教程,以及有关opengl wiki here的更多信息。