上一篇文章粗略地介绍了要实现OpenGL ES 2.0的阴影映射所需的知识难点,现在简略地说明一下:1、FBO;2、着色器;3、float的分拆以及组合。上篇文章虽然说已经成功地移植了来自Java编写的Android下阴影映射的效果,但这边采用的很大程度上是OpenGL原生代码编写的内容,接下来的目标是采用自Qt 5起就逐渐采用的Qt对OpenGL的封装类,用面向对象的思维来处理OpenGL对象,这样让代码更加优雅。...
分类:
其他好文 时间:
2015-05-25 16:48:51
阅读次数:
170
1、基本着色器的架构
顶点着色器:接收客户端输入的Attribute属性数据,有些计算后自己用于顶点变换,有些传给片段着色器。除此之外,顶点着色器还接受uniform数据,一般是变换矩阵。最后输出顶点的位置变换值。
片段着色器:接收来自顶点着色器输出的纹理坐标和纹理等属性,另外也接收用于计算光照的光照颜色的uniform值,最后输出像素的颜色值。
2、Shader的变量和数据...
分类:
其他好文 时间:
2015-05-18 14:43:53
阅读次数:
515
1.固定渲染管线与可编程渲染管线的区别:1)、固定渲染管线 ——这是标准的几何&光照(T&L)管线,功能是固定的,它控制着世界、视、投影变换及固定光照控制和纹理混合。T&L管线可以被渲染状态控制,矩阵,光照和采制参数。2)、顶点着色器——图形开发人员可以对渲染管线中的顶点运算和像素运算分别进行编程处...
分类:
其他好文 时间:
2015-05-12 22:53:47
阅读次数:
171
OpenGL 4.3 最新渲染管线图从OpenGL 2.0 到 OpenGL 3.0变化非常大,但从OpenGL 3.0 到OpenGL 4.0 变化不是太大。着色器程序直接运行在GPU上,并且是并行的,一个片元着色器可能一次执行所有象素。deprecation model, 在OpenGL3.0 ...
分类:
其他好文 时间:
2015-05-12 13:22:26
阅读次数:
166
ssao,
基本思路是先得到深度纹理,以及法线纹理.
然后画一个覆盖全屏的四边形
不一定真画,只要保证四边形的四个点映射到屏幕的四个角即可,
所以甚至可以不必传入顶点的坐标数据,根据顶点索引值(dx可以得到,opengl考虑顶点属性)
映射到屏幕的四个角
在四边形片元(dx对应叫像素)着色器中,查对应的深度纹理,以及法线纹理normal.
可以根据深度值还原出...
分类:
其他好文 时间:
2015-05-08 00:07:25
阅读次数:
224
今天晚上没事将以前弄的OPENGL着色语言实现滤镜效果的实现和大家分享一下,滤镜主要包括图像的对比度调整、浮雕效果、彩色图片灰度化、卷积等操作。 这些操作其本质上是属于图像处理的东西,OpenGL实现图像处理主要是用到了GLSL着色语言。具体到着色器就是片段着色器。 说白了就是如何用OpenGL做通用GPU计算,OpenGL做通用计算的步骤主要如下:读取数据->顶点...
分类:
其他好文 时间:
2015-05-06 21:13:12
阅读次数:
672
OSG渲染层封装
OpenGL_API可以大致分成这样几个部分:
1:顶点操作(立即模式,显示列表,顶点数组,顶点缓冲区),
2:纹理(一维纹理,二维纹理,三维纹理,天空盒),
3:灯光(类型,光源,光照模型) ,
4:着色器(顶点着色器,片段着色器,一致变量,属性变量),
5:帧缓冲区(渲染缓冲区),
6:...
分类:
其他好文 时间:
2015-05-04 22:15:52
阅读次数:
476
章节内容签到第一课:界面介绍第一讲 编辑器工作区4月27日第二课:资源管理第二讲 资源及资源类型4月27日第三讲 资源管理:模型和角色动画的输出设置(上)4月27日第四讲 资源管理:模型和角色动画的输出设置(下)4月27日第五讲 资源管理:材质和着色器4月29日第六讲 资源管理:2D文理Mov...
分类:
编程语言 时间:
2015-05-04 15:23:20
阅读次数:
184
在cocos2d-x中有两个类CCGLProgram和CCShaderCache.CCGLProgram类来处理着色器相关操作,对当前绘图程序进行了封装.CCShaderCache通过CCGLProgram来完成对shaders的缓存和管理.这两个类的功能在项目中经常用到,比如实现图象由正常颜色变成灰色(好处是减少资源图),还有在刀塔传奇中用使人物冰封,石化等效果都是用shader.
这里对于这...
分类:
其他好文 时间:
2015-04-30 16:18:57
阅读次数:
834
在定义了将要被OpenGL绘制的形状之后,你当然想要绘制它们。使用OpenGL ES 2.0绘制图形需要的代码可能比你想象的要多,因为API提供了大量的图形渲染管道控制接口。
这一章将介绍如何使用OpenGL ES 2.0 API绘制上一章中定义的形状
1. 初始化形状
在你做任何的绘制操作之前,你都必须进行初始化和加载计划绘制的形状。除非在执行的过程中形状所...
分类:
移动开发 时间:
2015-04-22 18:24:03
阅读次数:
141