Python glut显示功能的频率
我不明白到底是什么原因导致使用glut调用Python glut显示功能的频率,python,opengl,glut,Python,Opengl,Glut,我不明白到底是什么原因导致使用glut调用display函数 我使用pyopenglforpython。我的程序有一个update()函数,使用glutTimerFunc每隔60秒调用一次 这是在屏幕上修改对象的唯一功能,绝对没有其他功能。因此,我希望display函数在update函数运行后调用一次 但事实并非如此:在对update()的两次调用之间,display函数被调用了大约10次。这显然是一种浪费,我担心它会在更困难的时候减慢程序 它让我的电脑风扇发出噪音 我试图在更新函数的末尾添加一
display
函数
我使用pyopenglforpython。我的程序有一个update()
函数,使用glutTimerFunc
每隔60秒调用一次
这是在屏幕上修改对象的唯一功能,绝对没有其他功能。因此,我希望display
函数在update
函数运行后调用一次
但事实并非如此:在对update()
的两次调用之间,display
函数被调用了大约10次。这显然是一种浪费,我担心它会在更困难的时候减慢程序
它让我的电脑风扇发出噪音
我试图在更新函数的末尾添加一个glutPostRedisplay()
,没有任何区别
有没有办法强迫glut仅在真正需要时调用
display
?在结构合理的程序中,glutPostRedisplay(…)
就是为了这个目的。如果您执行了需要重新绘制场景的操作,则调用它,GLUT将在稍后的时间点调用显示回调。它不会立即调用显示回调,而是延迟此调用,并且多个glutPostRedisplay(…)
调用不一定会转换为每次调用一次。它类似于旧图形中的“脏”帧缓冲区,您知道它需要重新发布,并且在合乎逻辑的情况下,可以使用它;您每帧只能转换一次dirty。谢谢,但我仍然不明白为什么只有一个(或否)GLUTPOSTRESDISPLAY
转换为多个display
调用(您的评论解释了相反的情况)。