OpenGL ES 3.0之Fragment buffer objects(FBO)详解(二)
我们可以使用帧缓冲对象来实现离屏渲染。帧缓冲对象支持下列操作
1.只使用OpenGL ES 函数创建帧缓冲区对象。
2.使用EGL context创建多个FBO。
3.创建离屏颜色、深度、模板渲染缓冲区和纹理,把它们绑定到帧缓冲区对象上。
4.通过多种缓冲区共享颜色、深度、模板缓冲区内容。
5.把纹理作为颜色、深度直接关联到帧缓冲区,避免使用拷贝操作。
6.FBO与无效FBO之间的复制。
Framebuffer and Renderbuffer Objects帧缓冲对象与渲染缓冲对象
渲染缓冲区对象是应用程序分配的2D图像缓冲区。渲染缓冲区被用来存储颜色、深度或模板值,能作为颜色、深度或模板关联到一个帧缓冲区对象。渲染缓冲区和操作系统提供的离屏的绘制窗口pbuffer 有很多相似的地方。渲染缓冲区不能直接被GL 作为纹理使用。
FBO是一个颜色,深度和模板纹理或渲染目标的集合。各种2D 图像能被关联到帧缓冲区对象的颜色点上。

创建FBO与RBO


使用渲染缓冲区对象

注意在使用glBindRenderbuffer 绑定缓冲区前,glGenRenderbuffers 不要求去分配渲染缓冲区对象名字。虽然调用glGenRenderbuffers 是一个好的习惯,那仍然有很多应用程序在编译时为它们的缓冲区指定常量。应用程序能指定一个不使用的渲染缓冲区对象名字去执行glBindRenderbuffer。我们建议使用glGenRenderbuffers 返回的名字替代应用程序自己指定缓冲区名字。
一旦渲染缓冲区对象被绑定,我们能指定渲染缓冲区内的存储的图像的尺寸和格式

使用FBO


OpenGL ES 3.0之Fragment buffer objects(FBO)详解(二)的更多相关文章
- OpenGL ES 3.0之Fragment buffer objects(FBO)详解(一)
片段操作图 这篇文章将介绍从写入帧缓冲和读取帧缓冲的方式. Buffers(缓冲) OpenGL ES支持三种缓冲: OpenGL ES •• Color buffer颜色缓冲 •• Depth bu ...
- OpenGL ES 3.0之Fragment buffer objects(FBO)详解 (转)
http://www.cnblogs.com/salam/p/4957250.html 片段操作图 这篇文章将介绍从写入帧缓冲和读取帧缓冲的方式. Buffers(缓冲) OpenGL ES支持三种缓 ...
- OpenGL ES 3.0之VertexAttributes,Vertex Arrays,and Buffer Objects(九)
顶点数据,也称为顶点属性,指每一个顶点数据.指能被用来描述每个顶点的数据,或能被所有顶点使用的常量值.例如你想绘制一个具有颜色的立方体三角形.你指定一个恒定的值用于三角形的所有三个顶点颜色.但三角形的 ...
- Beginning OpenGL ES 2.0 with GLKit Part 1
Update 10/24/12: If you’d like a new version of this tutorial fully updated for iOS 6 and Xcode 4.5, ...
- OpenGL ES 2.0 渲染管线 学习笔记
图中展示整个OpenGL ES 2.0可编程管线 图中Vertex Shader和Fragment Shader 是可编程管线: Vertex Array/Buffer objects 顶点数据来源, ...
- OpenGL ES 3.0 Graphics Pipeline
一:OpenGL ES 3.0 Graphics Pipeline 渲染管道如下图 1.Vertex Buffer/Arrays Objects的数据由应用程序传进来 2.由上图可以看到Textur ...
- 在 OpenGL ES 2.0 上实现视差贴图(Parallax Mapping)
在 OpenGL ES 2.0 上实现视差贴图(Parallax Mapping) 视差贴图 最近一直在研究如何在我的 iPad 2(只支持 OpenGL ES 2.0, 不支持 3.0) 上实现 视 ...
- 《OpenGL® ES™ 3.0 Programming Guide》读书笔记1 ----总览
OpenGL ES 3.0 Graphics Pipeline OpenGL ES 3.0 Vertex Shader Transform feedback: Additionally, OpenGL ...
- 基于Cocos2d-x学习OpenGL ES 2.0系列——纹理贴图(6)
在上一篇文章中,我们介绍了如何绘制一个立方体,里面涉及的知识点有VBO(Vertex Buffer Object).IBO(Index Buffer Object)和MVP(Modile-View-P ...
随机推荐
- js判断只能输入数字或小数点
JS判断只能是数字和小数点 1.文本框只能输入数字代码(小数点也不能输入) <input onkeyup="this.value=this.value.replace(/\D/g,'' ...
- 【Go命令教程】1. 标准命令详解
Go 语言的 1.5 版本在标准命令方面有了重大变更.这倒不是说它们的用法有多大的变化,而是说它们的底层支持已经大变样了.让我们先来对比一下 $GOROOT/pkg/tool/< 平台相关目录 ...
- LINUX 内核 API
http://www.compsoc.man.ac.uk/~moz/kernelnewbies/documents/kdoc/kernel-api/linuxkernelapi.html
- 阅读Linux内核源码时建立tags索引
比如在阅读arm架构的Linux内核代码时想建立arm架构相关的索引,可以使用下面的命令: make ARCH=arm tags
- 在ASP.NET MVC中使用typeahead.js支持预先输入,即智能提示
使用typeahead.js可以实现预先输入,即智能提示,本篇在ASP.NET MVC下实现.实现效果如下: 首先是有关城市的模型. public class City { public int Id ...
- 委托、Lambda表达式、事件系列02,什么时候该用委托
假设要找出整型集合中小于5的数. static void Main(string[] args) { IEnumerable<int> source = new List<int&g ...
- Windows Phone本地数据库(SQLCE):4、[Column]attribute(翻译) (转)
这是“windows phone mango本地数据库(sqlce)”系列短片文章的第四篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的知 ...
- lastlog
[root@li739-39 ~]# lastlogUsername Port From Latestroot pts/1 183.15.253.245 Thu Oct 29 05:57:29 +00 ...
- netty 支持多种通讯协议
通讯协议,指的是把Netty通讯管道中的二进制流转换为对象.把对象转换成二进制流的过程.转换过程追根究底还是ChannelInboundHandler.ChannelOutboundHandler的实 ...
- 加州靡情第一至七季/全集Californication迅雷下载
加州靡情 第一至七季 Californication Season 1-7 (2007-2014)本季看点:2007-2014,7季,84集.电视圈一直有个怪现象,有许多演员在非常成功剧集完结之后,反 ...