Cocos Creator Shader与材质

Cocos creator 2.1以后引入了3D渲染的底层,所以引入了Shader和材质系统,比如精灵,下面有一个材质, 材质又选了一个Shader;

给大家推荐一个cocos creator学习+交流 705182843

 

1: 什么是Shader和材质?

   Shader是一种给显卡GPU执行的程序, 是一种绘制算法,显卡的渲染流水线加载Shader代码后,就能够在绘制的时候执行Shader的代码。Cocos 有自己的一个Shader的结构,Shader的开发语言cocos使用的是GLSL编程语言。

   材质是一种配置文件,选好一个Shader,并指定好这个Shader所需要的参数;

 

2: cocos 物体是如何绘制的?

  以Sprite组件为例,它有一个材质,这个时候绘制图片的时候,就使用这个材质,通过材质渲染管道准备好算法,和参数,这样,渲染管道就绘制出来。

 

2: 完整的Shader渲染流程(pass)

 

3: cocos Shader的结构

   1: 描述部分

      顶点shader在哪里,着色shader在哪里?材质上的参数定义哪些,这个是描述部分。

2: 顶点Shader部分:

3: 着色Shader部分:

 

 

4: GLSL常用的概念:

GLSL变量精度级别: highp, mediump, lowp (高, 中, 低)

attribute: 渲染管道传过来的数据, 只能在顶点Shader中使用;

varying: vectex Shader, frag Shader 的传递变量

uniform:  外部程序可以来设置的变量;

 

如果需要完整高斯模糊Shader的同学,可以联系我

猜你喜欢

转载自blog.csdn.net/voidinit/article/details/100039631