雙緩衝和單緩存的區別

雙緩衝和單緩存的區別

編碼時遇到glutInitDisplayMode(unsigned int mode) ;函數,主要作用是設置初始顯示模式,其中有兩個可用形參不甚理解。分別爲GLUT_SINGLE,GLUT_DOUBLE。其中GLUT_SINGLE指定單緩存窗口,GLUT_DOUBLE指定雙緩存窗口。

這裏必須要搞明白雙緩存窗口和單緩存窗口的區別。

單緩存窗口:實際上就是將所有的繪圖指令在窗口上執行,就是直接在窗口上繪圖,這樣的繪圖效率是比較慢的,如果使用單緩衝,而電腦比較慢,你回到屏幕的閃爍。

雙緩存窗口:實際上的繪圖指令是在一個緩衝區完成,這裏的繪圖非常的快,在繪圖指令完成之後,再通過交換指令把完成的圖形立即顯示在屏幕上,這就避免了出現繪圖的不完整,同時效率很高。

如何使用呢?
一般用OpenGL繪圖都是用雙緩衝,單緩衝一般只用於顯示單獨的一副非動態的圖像。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章