码迷,mamicode.com
首页 > 其他好文 > 详细

【固定功能着色器笔记】

时间:2015-12-14 19:10:09      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:

·没有嵌套CG语言,也就是代码段中没有CGPROGARAM和ENDCG关键字的,就是固定功能着色器。

//Pass部分说明----------------------------------------------------------------------------------------//

这些代码一般是写在Pass{ }中的,细节如下:

Color Color
设定对象的纯色。颜色即可以是括号中的四值(RGBA),也可以是被方框包围的颜色属性名。

Material { Material Block }
材质块被用于定义对象的材质属性。

Lighting On | Off
开启光照,也就是定义材质块中的设定是否有效。想要有效的话必须使用Lighting On命令开启光照,而颜色则通过Color命令直接给出。

SeparateSpecular On | Off
开启独立镜面反射。这个命令会添加高光光照到着色器通道的末尾,因此贴图对高光没有影响。只在光照开启时有效。

ColorMaterial AmbientAndDiffuse | Emission
使用每顶点的颜色替代材质中的颜色集。AmbientAndDiffuse 替代材质的阴影光和漫反射值;Emission 替代 材质中的光发射值。

//Mat部分说明----------------------------------------------------------------------------------------//

这些代码一般是写在Material{ }中的,细节如下:

Diffuse Color(R,G,B,A)

漫反射颜色构成。这是对象的基本颜色。

Ambient Color(R,G,B,A)
环境色颜色构成.这是当对象被RenderSettings.中设定的环境色所照射时对象所表现的颜色。

Specular Color(R,G,B,A)
对象反射高光的颜色。(R,G,B,A)四个分量分别代表红绿蓝和Alpha,取值为0到1之间。

Shininess Number
加亮时的光泽度,在0和1之间。0的时候你会发现更大的高亮也看起来像漫反射光照,1的时候你会获得一个细微的亮斑。

Emission Color
自发光颜色,也就是当不被任何光照所照到时,对象的颜色。(R,G,B,A)四个分量分别代表红绿蓝和Alpha,取值为0到1之间。

 

而打在对象上的完整光照颜色最终是:
FinalColor=
Ambient * RenderSettings ambientsetting + (Light Color * Diffuse + Light Color *Specular) + Emission

翻译过来的中文式子便是:
最终颜色=环境光反射颜色* 渲染设置环境设置 *(灯光颜色*漫反射颜色+灯光颜色*镜面反射颜色)+自发光

 

【固定功能着色器笔记】

标签:

原文地址:http://www.cnblogs.com/hellozzz/p/5045904.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!