US2S2L2——ShaderLab的基本结构

ShaderLab的基本结构

ShaderLab主要由4个部分组成

  1. Shader的名字
  2. Shader的属性
  3. 1~n个子着色器
  4. 备用的Shader
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Shader "着色器名字" 
{
//第二部分
Properties
{
//材质面板上可以看到的属性
}

//第三部分
SubShader
{
//顶点-片段着色器 或 表面着色器 或 固定函数着色器
}
//如果发现这个SubShader不可用,就会向后寻找可用的SubShader
SubShader
{
//更加精简的版本
//目的是适配旧设备
}
//.....可以有n个SubShader代码块

//第四部分,当第三部分的SubShader都不可用时,即可使用备用Shader,如果确认SubShader会正常执行,则可以不使用SubShader
Fallback "备用的Shader"
}

我们创建的所有Shader,都是基于ShaderLab的这些语法规则的,我们可以来观察下创建的一些默认Shader内容

  1. Shader的名字
  2. Shader的属性
  3. 1~n个子着色器
  4. 备用的Shader

image