转自http://www.itnose.net/detail/6098539.html1.不透明度当我们要将两个半透的纹理贴图到一个材质球上的时候就遇到混合的问题,由于前面的知识我们已经知道了片段着色器以及后面的环节的主要工作是输出颜色与深度到帧缓存中,所以两个纹理在每个像素上的颜色到底以怎样的形式...
分类:
编程语言 时间:
2015-06-23 19:39:12
阅读次数:
220
转自http://www.itnose.net/detail/6095974.html上一篇文章的例子中我们可以看到顶点着色器的输出参数可以说是直接作为了片段着色器的形参传递过来,那么不由得一个问题浮现出来,顶点着色器的形参是从何处传递过来的?顶点着色器的形参是gameObject 的meshRen...
分类:
编程语言 时间:
2015-06-19 18:05:12
阅读次数:
148
转自http://www.itnose.net/detail/6095323.html前提知识点:1.CG代码必须用CGPROGRAM。。。ENDCG括起来2.顶点着色器与片段着色器的主函数名称可随意,但需要再#pragma vert 与#pragma fragment中声明并且与主函数名完全匹配,...
分类:
编程语言 时间:
2015-06-19 16:35:59
阅读次数:
171
Shader编程一直是一个比较难入门难上手的主题,本篇对Unity Shader编程的一些基础和要点进行了总结。
包括Shader编程相关知识图谱、Shader编程相关数据类型、Shader核心结构体等(后续继续补充)。
每个部分相互独立,可以单独参考,亦可作为一个整体参考。...
分类:
编程语言 时间:
2015-06-19 11:51:09
阅读次数:
217
OpenGL ES着色语言为标量和向量操作定义了一套内建便利函数。有些内建函数可以用在多个类型的着色器中,有些是针对固定硬件的,所以这部分只能用在某个特定的着色器上。 内建函数基本上可以分为一下三类:(1)它们使用一些简便的方式提供必要的硬件功能,如材质贴图。这些函数单独通过着色器是无法模拟出来的。...
分类:
编程语言 时间:
2015-06-09 17:06:59
阅读次数:
123
缓冲区有很多用途:可以保存顶点数据,像素数据,纹理数据,着色器处理的输入,不同着色器阶段的输出。缓冲区保存在GPU内存中,提供高速有效的访问。像素缓冲区对象:GLuint pixBufferObjs[1];glGenBuffers(1,pixBuffObjs);glBindBuffer(GL_PIX...
分类:
其他好文 时间:
2015-06-08 18:41:49
阅读次数:
166
引擎提供了CCGLProgram类来处理着色器相关操作,对当前绘图程序进行了封装,其中使用频率最高的应该是获取着色器程序的接口:const GLuint getProgram();该接口返回了当前着色器程序的标识符。后面将会看到,在操作OpenGL的时候,我们常常需要针对不同的着色器程序作设置。.....
分类:
其他好文 时间:
2015-05-29 11:18:21
阅读次数:
154
简而言之,在渲染管道中,有两个环节是开放给我们的,即Vertex Shader(顶点着色器)和Fragment/Pixel Shader(片段着色器)。shader或pipeline相关的入门资料是非常多的,但没有多少中文资料是初学者真的能看懂的。如同国内外计算机书籍的区别一样,我们从小耳濡目染了把...
分类:
其他好文 时间:
2015-05-27 13:52:29
阅读次数:
137
想要彻底研究OpenGL ES 2.0于前一代OpenGL的区别,还是要费很大一番精力的。最近在仔细研读《OpenGL ES 2.0 Programming Guide》,虽然这本书最早出版日期是2008年,距今已经7年了,而著作的日期或许还要早上半年到1年,但是目前OpenGL ES 2.0是主流三维开发框架,因此这本书的知识直到现在,依然受用。...
分类:
其他好文 时间:
2015-05-26 09:13:35
阅读次数:
105