因此,我刚刚开始从SDL切换到OpenGL,而我遇到了使用SDL时没有的问题。当屏幕上出现很多东西时,Opengl速度变慢
当屏幕上有很多东西时,整个事情就会变成慢动作。当我说了很多我的意思是200个+对象,但开始出现明显的也许从50
这是事情是如何呈现的,我有一个virtual void render()
一个class Renderable
这是由RenderManager
在一个循环void manage()
叫其在屏幕上每Renderable
调用render()
。
主循环看起来像这样
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
_renderManager.manage();
glFlush();
SDL_GL_SwapBuffers();
和render()
对我使用的对象仅仅是正方形所以
glBegin(GL_QUADS);
// Draw square with colors
glEnd();
我的CPU使用率或内存使用率似乎并不高总之,这就像......游戏正在减速。
您将需要缩小范围或提供更多代码或其他内容,因为这里没有任何内容可以继续。 – 2012-02-15 22:49:30
您是否尝试过对各个组件进行计时,以了解花费最多时间的是什么? – cmannett85 2012-02-16 07:19:29