Kjoe's blog

笔记#03 | ShaderLab

笔记#03 | ShaderLab
2022-01-25 · 2 min read
笔记 Unity Shader

Properties 属性语法

_Name ("Display Name", type) = defaultValue [{options} ]
  • _Name: 属性的名字。(为了方便获取,通常在名字的最前加一个下画线,后续在整个Shader 中都将使用这个名称来获取该属性。)
  • Display Name:在材质面板中显示出来的名称。
    type:属性的类型
  • defaultValue:将 Shader 指定给材质的时候初始化的默认值。

数值类属性

name ("display name", Float) = number

name ("display name", Range (min, max)) = number
  • Float 是任意数值的浮点型数据,在材质面板上作为数宇输人框显示。
  • Range 是一个介于最大值和最小值之间的浮点型数据,在材质面板作为滑动条显示。

颜色和向量类属性

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

name ("display name", Vector) = (number1, number2, number 3, number4)
  • Color 是颜色类型的数据,由RGBA四个分量定义,面板上会显示取色器

  • Vector 是向量类型属性,是四维数字,面板上会显示 X,Y,Z,W

    name ("display name", 2D) = "defaulttexture"{}

    name ("display name"Cube) = "defaulttexture" {}

    name ("display name", 3D) = "defaulttexture"{}

  • 2D 属性是纹理属性中最常使用的,漫反射贴图,法线贴图等都属于2D类型

  • Cube(立方体纹理),是由前后左右上下6张有联系的2D贴图拼成的立方体,主要用作反射,例如SkyBox和Reflection Prob

>————————这是底线————————<