阅读红皮书时,我发现:
哪些时候应该调用glutPostRedisplay()?从这一段,我不明白为什么需要它的功能。
最佳答案
每当必须重新绘制窗口时,就会调用glutDisplayFunc。这包括一个人调用glutPostRedisplay的时间:)
什么时候需要重新绘制窗口?
但是,如果您的显示函数在位置x; y处绘制一个三角形,其中x; y;会怎样呢?是由鼠标位置决定的?在这种情况下,每当鼠标右移时,您都必须要求系统重新绘制窗口?这就是为什么要从MouseFunc()调用glutPostRedisplay的原因。实际上,当您调用glutPostRedisplay时,重绘事件会与其他窗口事件(例如鼠标单击ets)一起排队。本质上,您的mainLoop会从该队列中选择事件并调用其处理程序
关于opengl - 了解glutDisplayFunc和glutPostRedisplay之间的关系,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4206472/