QQ群:162541429 --->>战斗卡牌视频教程发布(网游) 点击查看

Unity Shader基础教程【2】 之 初识和Properties参数列表

Shader 小宝 3446℃ 0评论

初识Shader

首先。我们建立一个新的shader后。会有一段默认的代码。如下

 

如上。命名为“小宝Shader/Test” 这样在选择Shader时会出现这个。如下

unity shader基础教程

 基本框架

之后的Shader都在这个基本框架下修改。

属性Properties

上面。我们了解了下Shader的基本结构。下面我们来了解下Properties属性。

我们在上面代码基础上。添加内容。在Properties添加如下属性  属性介绍

我们来看Shader的效果。前修改后和修改前的对比。

Unity Shader基础教程

 

Unity中使用Shader都是基于材质的。所以我们来新建要给材质并引用Shader。看看效果。如下:

Shader基础

 

这样。我们就能看到我们定义的属性。并且能修改值。但是由于我们用的默认的函数。只使用了贴图。故而只有贴图起效果了。颜色和浮点值不起效果。函数我们将在后面讲到。

最后。Properties属性定义命名规则

Properties { Property [Property …] }定义属性块,其中可包含多个属性,其定义如下

name (“display name“, Range (minmax)) = number

定义浮点数属性,在检视器中可通过一个标注最大最小值的滑条来修改。

name (“display name“, Color) = (number,number,number,number)

定义颜色属性

name (“display name“, 2D) = “name” { options }

定义2D纹理属性

name (“display name“, Rect) = “name” { options }

定义长方形(非2次方)纹理属性

name (“display name“, Cube) = “name” { options }

定义立方贴图纹理属性

name (“display name“, Float) = number

定义浮点数属性

name (“display name“, Vector) = (number,number,number,number)

定义一个四元素的容器(相当于Vector4)属性

name 为变量名称 每一个变量名称都必须在前面加_下划线(不要问我为什么,规定就是这样。);

(“display name” , variable)  “display name”为面板显示的名称 variable为变量的类型(类型如:Range(min,max),Color,2D,Rect,Cube,Float,Vector)

 

需要注意的是,包含在纹理属性的大括号中的选项Options是可选的。可能的选项有如下:

TexGen纹理生成类型。纹理的自动生成纹理坐标时的模式,可以是ObjectLinear, EyeLinear,SphereMap, CubeReflect, CubeNormal的其中之一;这些模式和OpenGL纹理生成模式相对应。注意如果使用自定义顶点程序,那么纹理生成将被忽略。

系列链接传送门

【1】Unity Shader基础教程【1】 之 Shader的建立与使用

【2】Unity Shader基础教程【2】 之 初识和Properties参数列表

转载请注明:小宝个人笔记 » Unity Shader基础教程【2】 之 初识和Properties参数列表

喜欢 (0)or分享 (0)
本站所有内容如未标明转载的内容,均为原创内容。转载请注明来源!
发表我的评论