C++ OpenGL/GLUT GLUTIMERFUNC速度减慢
我有一个openGL/GLUT应用程序,它使用球碰撞检测。一切运转良好,一切运转良好。但是 当更新功能(推进所有球,检查与其他球或墙的碰撞等)被放置在GLUTIMERFUNC中进行更新时,我得到了一个很好的13.5 FPS,并且一切运行都很慢。函数本身的更新计时器足够高,不会产生任何开销 因此,现在我将碰撞检测的高级功能放在我的主绘图功能(由glutDisplayFunc和glutIdleFunc调用)中,惊喜惊喜惊喜我有稳定的60.5 FPS,没有延迟和平滑的动画C++ OpenGL/GLUT GLUTIMERFUNC速度减慢,c++,opengl,glut,C++,Opengl,Glut,我有一个openGL/GLUT应用程序,它使用球碰撞检测。一切运转良好,一切运转良好。但是 当更新功能(推进所有球,检查与其他球或墙的碰撞等)被放置在GLUTIMERFUNC中进行更新时,我得到了一个很好的13.5 FPS,并且一切运行都很慢。函数本身的更新计时器足够高,不会产生任何开销 因此,现在我将碰撞检测的高级功能放在我的主绘图功能(由glutDisplayFunc和glutIdleFunc调用)中,惊喜惊喜惊喜我有稳定的60.5 FPS,没有延迟和平滑的动画 那么这怎么可能呢?这是否与G
那么这怎么可能呢?这是否与GLUTIMERFUNC被多次调用并使一切变慢这一事实有关,还是有什么GLUTIMERFUNC的原因?就像我说的,没有任何改变,只是一个函数被放置在另一个函数调用中。这非常简单。不要使用过量。对于任何可靠的物理模拟,你都希望完全控制主回路。我同意CPP的观点,我最近抛弃了glut,发现glfw是一种无痛的替代品,可以让你控制主回路。