openGL学习笔记三十九: FBO
PBuffer: 是opengl的扩展,在opengles 中称作surface,在一个应用程序中建立多个opengl对象,主要用途:离屏渲染(离开屏幕进行渲染),建立一个PBuffer就是建立一个opengl对象,这个opengl对象是在后台绘制,并不把数据绘制到我们的窗口上。 Frame Buffer Object(FBO): 帧缓冲对象,另一种离屏渲染方式,比PBuffer更加高效, opengl2.0以上才有的扩展功能。用于缓存一帧数据。 当创建一个fbo对象后,它并不占用显存,它只是一个对象,你可以给它绑定颜色缓冲区、深度缓冲区等等,(也可以不绑定颜色、深度等等缓冲区)。 相关函数: glGenFramebuffers ( 1 , & _FBOID ) ; //产生一个fbo对象 glBindFramebuffer ( GL_FRAMEBUFFER , _FBOID ) ; //绑定 告诉opengl这是一个framebuffer glGenRenderbuffers ( 1 , & _RBOID ) ; //产生一个reader buffer 绘制使用 glBindRenderbuffer ( GL_RENDERBUFFER , _RBOID ) ; // 告诉opengl这是一个reader buffer glRenderbufferStorage (