OpenGL glRenderbufferStorage 函式詳解 - 程式人生
文章推薦指數: 80 %
glRenderbufferStorage 指定儲存在 renderbuffer 中影象的寬高以及顏色格式,並按照此規格為之分配儲存空間,當一個渲染快取被建立,它沒有任何資料 ...
程式人生>>OpenGLglRenderbufferStorage函式詳解
OpenGLglRenderbufferStorage函式詳解
阿新••發佈:2019-01-11
OpenGLglRenderbufferStorage函式詳解
glRenderbufferStorage指定儲存在renderbuffer
中影象的寬高以及顏色格式,並按照此規格為之分配儲存空間,當一個渲染快取被建立,它沒有任何資料儲存區域,所以我們還要為他分配空間。
這可以通過用glRenderbufferStorage()實現。
第一個引數必須是GL_RENDERBUFFER。
第二個引數可以是用於顏色的(GL_RGB,GL_RGBA,etc.),用於深度的(GL_DEPTH_COMPONENT),或者是用於模板的格式(GL_STENCIL_INDEX)。
Width和height是渲染快取影象的畫素維度。
width和height必須比GL_MAX_RENDERBUFFER_SIZE小,否則將會產生GL_UNVALID_VALUE錯誤。
注意在iOS端glRenderbufferStorage需要使用renderbufferStorage:fromDrawable
函式來代替,至於原因請點選參考
iOSOpenGLrenderbufferStorage:fromDrawable方法詳解
設定緩衝區物件的通用方法:
//幀緩衝區物件
glGenFramebuffers(1,&fboId);
glBindFramebuffer(GL_FRAMEBUFFER,fboId);
//渲染緩衝區作為顏色緩衝區
glGenRenderbuffers(1,&colorBuffer);
glBindRenderbuffer(GL_RENDERBUFFER,colorBuffer);
glRenderbufferStorage(GL_RENDERBUFFER,GL_RGBA,width,height);
glBindRenderbuffer(GL_RENDERBUFFER,0);
//將渲染緩衝區作為顏色緩衝區附加到fbo
glFramebufferRenderbuffer(GL_FRAMEBUFFER,GL_COLOR_ATTACHMENT0,GL_RENDERBUFFER,colorBuffer);
//將緩衝區渲染為深度緩衝區
glGenRenderbuffers(1,&depthBuffer);
glBindRenderbuffer(GL_RENDERBUFFER,depthBuffer);
glRenderbufferStorage(GL_RENDERBUFFER,GL_DEPTH_COMPONENT,width,height);
glBindRenderbuffer(GL_RENDERBUFFER,0);
//將渲染緩衝區作為深度緩衝區附加到fbo
glFramebufferRenderbuffer(GL_FRAMEBUFFER,GL_DEPTH_ATTACHMENT,GL_RENDERBUFFER,depthBuffer);
glGenRenderbuffers(1,&stencilBuffer);
glBindRenderbuffer(GL_RENDERBUFFER,stencilBuffer);
glRenderbufferStorage(GL_RENDERBUFFER,GL_STENCIL_INDEX,width,height);
glBindRenderbuffer(GL_RENDERBUFFER,0);
//將渲染緩衝區附加到fbo作為模板緩衝區
glFramebufferRenderbuffer(GL_FRAMEBUFFER,GL_STENCIL_BUFFER,GL_RENDERBUFFER,stencilBuffer);
解決Ubuntu系統啟動出現黑屏及游標閃動現象
«上一篇
Burpsuite抓手機APP包並簡要分析下一篇»
相關推薦
OpenGLglRenderbufferStorage函式詳解
OpenGLglRenderbufferStorage函式詳解
glRenderbufferStorage指定儲存在...
OpenGLgluLookAt函式詳解
第三組就是頭頂朝向的方向(因為你可以歪著頭看同一個物體)。
#include
OpenGL著色語言中沒有指標和字串或字元。
返回值可以為vo...
關於opengl中的三維矩陣平移,矩陣旋轉,推導過程理解OpenGL計算機圖形學的一些必要矩陣運算知識glTranslatef(x,y,z)glRotatef(angle,x,y,z)函式詳解
原文作者:aircraft
原文連結:https://www.cnblogs.com/DOMLX/p/12166896.html
&...
MySQL的函式詳解!
完整性約束
什麼是資料完整性
資料的準確性和可靠性。
分類
實體完整性
記錄準確的。
(記錄...
Vue生命週期函式詳解
vue例項的生命週期
1什麼是生命週期(每個例項的一輩子)
概念:每一個Vue例項建立、執行、銷燬的過程,就是生命週期;在例項的生命週期中,總...
goinit函式詳解
init()函式會在每個包完成初始化後自動執行,並且執行優先順序比main函式高。
init函式通常被用來:
對變數進行初始化
檢...
linux核心-ioctl函式詳解
1.概念
ioctl是裝置驅動程式中裝置控制介面函式,一個字元裝置驅動通常會實現裝置開啟、關閉、讀、寫等功能,在一些需要細分的情境...
assert.ifError()函式詳解
assert.ifError(value)
如果value為真值時,丟擲value。
當測試在回撥函式裡的引數error時非常有用。
consta...
assert.throws()函式詳解
assert.throws(block[,error][,message])
期望block函式丟擲一個錯誤。
如果指定error,它可以是一個建構...
搜尋
基礎教學
Mysql入門
Sql入門
Android入門
Docker入門
Go語言入門
Ruby程式入門
Python入門
Python進階
Django入門
Python爬蟲入門
最近訪問
OpenGL+glRenderbufferStorage+函式詳解
OpenCV相機標定及距離估計(單目)
深度學習基礎--CNN的視覺化技術
FPGA靜態時序分析基礎
iOS:Xcode++info.plist說明
ubuntu安裝VIM教程與命令詳解
計組—快取Cache
css-實現滑鼠移至圖片上顯示遮罩層
VBA視窗亂了如何恢復預設設定
java+介面實現關係下的多型
延伸文章資訊
- 1C++ (Cpp) glRenderbufferStorage Examples - HotExamples
These are the top rated real world C++ (Cpp) examples of glRenderbufferStorage extracted from ope...
- 2Java GLES20.glRenderbufferStorage方法代碼示例- 純淨天空
本文整理匯總了Java中android.opengl.GLES20.glRenderbufferStorage方法的典型用法代碼示例。如果您正苦於以下問題:Java GLES20.glRende...
- 3glrenderbufferstorage(3g) [osx man page] - The UNIX and ...
glRenderbufferStorage is equivalent to calling glRenderbufferStorageMultisample() with the sample...
- 4glRenderbufferStorage, glNamedRenderbufferStorage
glRenderbufferStorage is equivalent to calling glRenderbufferStorageMultisample() with the sample...
- 5OpenGL glRenderbufferStorage 函式詳解 - 程式人生
glRenderbufferStorage 指定儲存在 renderbuffer 中影象的寬高以及顏色格式,並按照此規格為之分配儲存空間,當一個渲染快取被建立,它沒有任何資料 ...