过了一会儿,glGenBuffers很慢

时间:2015-11-26 00:16:30

标签: opengl libgdx lwjgl

我正在为我的简单2D游戏编写游戏编辑器,其中网格是经常动态创建和删除的。我正在使用 libgdx

一切正常,但编辑器变慢了。它对输入事件的反应很晚。

要找到我的代码中的弱点(在所有atm中都没有优化),我运行 jprofiler 并分析CPU。事实证明, glGenBuffers 在14次调用中花费了2秒!这是7个网格,每个网格都有一个顶点和索引缓冲区。实际上,我有一台非常快的机器(i7-4790T,GTX980m,16GB ......),所以这不应该是问题。

我只是想知道这是怎么可能的,因为我不知道。

jprofiler

2 个答案:

答案 0 :(得分:0)

前两条评论是正确的。我正在重建场景的很大一部分来检查,如果它仍然存在(一般不聪明)。如果它仍然存在,则重建的部分不会被处理掉。只更换了部件才能正确更换。 :/。

我发现使用jprofiler和profiling内存的问题,如评论1中所述。

我没有检查图形内存,但没有其他方法,垃圾也在那里。

答案 1 :(得分:0)

缓冲区始终存储在内存中。总是需要清理,帧缓冲区,字节缓冲区等。