属性的类型
- Color颜色
- Int整数
- Float浮点数
- Vector四维数
- 2D纹理
- 3D纹理
- Cube立方体纹理
命名方式:
_+属性类型(“外部显示名称”,类型)=(默认值)
color类型
_Color ("颜色", Color) = (1,0.0,0.0,1)
颜色的组成是四个数组组成也就是四个分量分别为RGBA(红,绿,蓝,透明度)
RGB的取值是0-255在shader中被归一化为0-1
[HDR]_Color ("颜色",color)=(0,1,1,1)
在颜色前加上[HDR]后材质面板会显示HDR字样
HDR可以使颜色亮度超过1,可以配合镜头Bloom效果做出泛光的视觉效果
Int(整数类型)
_Int("整数",Int)=1
在材质面板可以随便取数值,但是在shader里只能识别为整数
这个值不是四舍五入是直接取前面的整数去小数
Float(浮点数)
_Float("浮点数",Float)=0.01
shader要求精度较高所以一般使用float
[Range]
_Float("浮点数",Range(0,1))=0.2
Range是一种常用的属性标记,将浮点数限制成一个滑动条,通过滑动条来选择一个区间
[PowerSlider(Value)]
[PowerSlider(5)]_Float("浮点数",Range(0,1))=0.2
Value的值可以自由定义,支持浮点数值越大滑条曲度越大,1为默认值
[IntRange]
[IntRange]_Float("浮点数",Range(0,1))=0.2
整数滑条,拖动时仅仅生成整数
[Toggle]
[Toggle]_Float("浮点数",Range(0,1))=0.2
开关,0开1关
[Enum]
[Enum(UnityEngine.Rendering.CullMode)]_Float("浮点数",Float)=1
枚举,下拉列表选择
Vector(四维向量)
_Vector("四维向量",Vector)=(0,0,0,0)
四个量分别为XYZW,也可以是RGBA
2D(2D纹理)
_MainTex ("2D纹理", 2D) = "white" {}
纹理贴图
Tiling 表示贴图重复度
Offset 表示贴图偏移值
[NoScaleOffset]
[NoScaleOffset]_MainTex ("2D纹理", 2D) = "white" {}
隐藏材质参数
[Normal]
[Normal]_MainTex ("2D纹理", 2D) = "white" {}
可以让用户在此次添加法线贴图
2D纹理的默认值有
1.white纯白色
2.black纯黑色
3.gray灰色图
4.bump法线图
3D(3D纹理)
_MainTex ("3D纹理", 3D) = "" {}
3D纹理主要用在查找表或体积上与2D不同默认都是灰色
CUBE(纹理盒子)
_MainTex ("Cube纹理", CUBE) = "" {}
CubeMap由六个正方体纹理组合成,包含6个2d纹理,一个面一个贴图
属性标记
[Header]
[Header(vertaet)]_Vector("四维向量",Vector)=(0,0,0,0)
在属性面板进行注释,作为类组使用,只能英文,数字,空格,下划线
[Hidelnlnspector]
隐藏这条属性