Cesium原理篇:6 Render模塊(4: FBO)

       Cesium不僅僅提供了FBO,也就是Framebuffer類,而且整個渲染過程都是在FBO中進行的。FBO,中文就是幀緩沖區(qū),通常都屬于高級用法,但其實,如果你了解了它的基本原理后,用起來還是很簡單的,關鍵在于理解。比如你蓋樓,地基沒打好,蓋第一層樓,還可以,蓋第二層樓,有點挫了,蓋第三層樓,塌了。你會認為第三層樓(FBO)太難了,其實根本原因還是出在地基上。

       窗口系統(tǒng)所管理的幀緩存有自己的緩存對象(顏色,深度和模板),它們誕生于窗口創(chuàng)建前,而我們自己創(chuàng)建的幀緩沖,這些緩存對象則需要自己來手動創(chuàng)建。還是默認大家了解FBO的概念和WebGL中使用的方式,在這個基礎上我們來看一下Cesium中對FBO的封裝。首先看一下FBO中的主要屬性:

復制代碼
function Framebuffer(options) { var gl = options.context._gl; var maximumColorAttachments = ContextLimits.maximumColorAttachments; this._gl = gl; this._framebuffer = gl.createFramebuffer(); this._colorTextures = []; this._colorRenderbuffers = []; this._activeColorAttachments = []; this._depthTexture = undefined; 
        		

延伸閱讀

學習是年輕人改變自己的最好方式-Java培訓,做最負責任的教育,學習改變命運,軟件學習,再就業(yè),大學生如何就業(yè),幫大學生找到好工作,lphotoshop培訓,電腦培訓,電腦維修培訓,移動軟件開發(fā)培訓,網(wǎng)站設計培訓,網(wǎng)站建設培訓學習是年輕人改變自己的最好方式