1. 程式人生 > >OpenGL之VBO,PBO,FBO技術

OpenGL之VBO,PBO,FBO技術

VBOvertex buffer object)是GPU上儲存頂點資料的快取記憶體。在應用程式初始化階段,頂點資料被直接傳送到顯示卡中的快取記憶體上,在繪製時可以直接從快取記憶體中獲取,除非幾何資料需要修改,否則VBO資料不需變化。除了VBO技術外,OpenGL還提供頂點陣列和顯示列表的繪製方式。頂點陣列可以降低函式呼叫次數與降低共享頂點的重複使用,但頂點陣列函式位於客戶端狀態中,且每次引用都須向服務端重新發送資料。顯示列表為服務端函式,並不受限於資料傳輸的開銷。不過,一旦顯示列表編譯完成,顯示列表中的資料不能夠修改。VBO技術使用OpenGLARB_vertex_buffer_object
擴充套件,可以實現顯示列表方式的高速資料傳遞,同時又能像使用頂點陣列那樣,繪製過程中隨時修改資料(可以通過對映快取到客戶端記憶體空間的方式讀取與更新頂點快取物件中的資料)。