关闭

OpenGL中实现双缓冲技术的方法

标签: opengl双缓冲
995人阅读 评论(0) 收藏 举报
分类:

OpenGL中实现双缓冲技术的三种方法是这样的

1.调用glutDisplayFunc(display)回调函数时, 在回调函数中所有绘制操作完成后调用glutSwapBuffers()交换两个缓冲区指针。

2.这种方法是大家经常用的吧glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE);GLUT_DOUBLE,使用双缓冲而不是单缓冲。

3.调用glutIdleFunc注册一个空闲时绘制操作函数, 注册的这个函数再调用display函数。     

那么我们为什么要使用双缓冲技术呢?

一个词解释原因的话就是解决屏幕的频繁刷新造成的画面闪烁问题。具体来说是这样的。双缓冲技术:包括前台缓冲(也就是屏幕)和后台缓冲(内存)绘图操作现在内存中(也就是后台缓冲中)绘好。然后再将结果复制到屏幕上。这样就不会造成画面的闪烁。

(以上文章参考文献:OpenGL红宝书和百度大神mayadong7349,感谢上述作者的奉献精神!)

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:16931次
    • 积分:292
    • 等级:
    • 排名:千里之外
    • 原创:12篇
    • 转载:5篇
    • 译文:0篇
    • 评论:1条