我正在使用GLFW制作一个小型演示应用程序来学习opengl 3.3。我的问题是,如果我运行一个版本编译它运行大约120帧/秒。调试编译以大约15 fps运行。为什么会这样?
它是一个演示拍摄大量移动和旋转的粒子。
答案 0 :(得分:3)
如果应用程序未经过优化并且花费很长时间执行非OpenGL命令,则OpenGL设备很容易处于空闲状态。
您应该在没有OpenGl命令的情况下分析应用程序(就好像您有一个无限快速的OpenGL设备)并检查您的FPS。如果它非常慢,这将表明您的应用程序受CPU限制(可能也处于发布模式)。
此外,如果你在opengl / glsl中设置调试选项,那么糟糕的表现不会是一个大惊喜。
调试模式应该用于调试应用程序,15fps仍然可以提供或多或少的交互式体验。
如果粒子系统使用CPU进行动画处理(仅OpenGl渲染),则应考虑使用GPU加速解决方案。