前半部分引用的是这位大侠的博客,目的说明渲染到纹理的过程。后面例子是我自己写的。
原文地址:OpenGL.FrameBuffer Object - 黎明的剔透里伸出了你沁清的暧昧 - C++博客
帧缓冲区对象呢又称为FBO,它允许我们把渲染从窗口的帧缓冲区转移到我们所创建的一个或者多个离屏帧缓冲区。被推荐用于数据渲染到纹理对象,相对于其他同类技术,如数据拷贝或者交换缓冲区等等,使用FBO技术会更高效且易于实现。此buffer包含了color buffer,depth buffer,stencil buffer.渲染到纹理这个技术在游戏中经常用来模拟电视机或者监视器等等的效果。
1.FBO并不受窗口大小的限制。
2.纹理可以连接到FBO,允许直接渲染到纹理,不需要显示glCopyTexImage。
3.FBO可以包含许多颜色缓冲区,可以同时从一个片段着色器写入
FBO为OpenGL core API的一部分,使用它之前要检查GL_EXT_frmaebuffer_object扩展