美文网首页
Unity Shader学习

Unity Shader学习

作者: Rain_简 | 来源:发表于2020-04-01 15:55 被阅读0次

Unity Shader属性

[Attribute]_Name ("Display Name",Type) = Default Value

Properties

{

[HDR]_Color("Color", Color) = (1,1,0,1)

}

Attribute

属性标记,就是Unity内置的几个属性标记关键字,可以不添加

_Name

属性的名称,也就是变量名,在Shader的CG代码中就是通过这个名称来调用此属性内容的。

Display Name:

显示在材质面板上的名称,主要起到说明解释的作用。

Type

属性的类型,常用的有以下几种:

Color颜色

Int整数

Float浮点数

Vector四维数

2D纹理

3D纹理

Cube立方体纹理

属性的几种使用:

_Color("我是Color", Color) = (1,1,1,1)

[HDR]_Color("Color", Color) = (1,1,0,1)   (HDR可以使颜色亮度的值超过1)

_Int("我是Int", Int) = 1

_Float("我是Float", Float) = 0.5

_Float("我是Float", Range( 0 , 1)) = 0.5 (将浮点数限制在一个可以通过滑动条来选择的一个区间)

[PowerSlider(3)]_Float("我是Float", Range( 0 , 1)) = 0.5   (PowerSlider (Value))其中Value的值我们可以自由定义,支持浮点数,值越大会导致                                                                                                 滑条的曲度变化越大,值为1时不改变。)

[IntRange]_Float("我是Float", Range( 0 , 1)) = 1   (在材质面板上拖动时就只能生成整数了)

[Toggle]_Float("我是Float", Range( 0 , 1)) = 1

[Enum(UnityEngine.Rendering.CullMode)]_Float("我是Float", Float) = 1

_Vector("我是Vector", Vector) = (0,0,0,0)

_MainTex("我是2D纹理", 2D) = "white" {}

[NoScaleOffset]_MainTex("我是2D纹理", 2D) = "white" {}      (不显示Tiling (贴图重复度)Offset (贴图偏移值))

[Normal]_MainTex("我是2D纹理", 2D) = "white" {} (必须是法线贴图)

_MainTex("我是3D纹理", 3d) = "" {}

_MainTex("我是Cube纹理", CUBE) = "" {}

[Header(This is Header )]_Int("我是Int", Int) = 1   (在材质面板上进行标注,通常用作分类组别用,注意只支持英文、数字、空格以及下划线。)

相关文章

网友评论

      本文标题:Unity Shader学习

      本文链接:https://www.haomeiwen.com/subject/hgjdwftx.html