材质与Unity Shader
常见的流程为:
- 创建一个材质
- 创建一个Unity Shader,并把它赋给上一步中创建的材质
- 把材质赋给要渲染的对象
- 在材质面板中调整Unity Shader的属性
新建的材质将使用Unity内置的Standard Shader,这是一个基于物理渲染的着色器
Unity提供的四种Shader
- Standard Shader(标准光照模型)
- Unlit Shader(产生不包含光照但包含雾效的基本顶点/片元着色器)
- Image Effect Shader(实现各种屏幕后处理效果的模板)
- Compute Shader(利用GPU的并行性来进行一些与常规渲染流水线无关的计算)
ShaderLab是Unity提供的一种专门为Unity Shader服务的语言
Unity Shader 的结构
- Properties(属性)
在材质面板中能够方便地调整各种材质属性。 - SubShader
定义了一系列Pass(定义了一次完整的渲染流程)以及RenderSetup(设置显卡的各种状态,例如是否开启混合/深度测试,注意此处设置会应用到所有pass)和Tags (告诉Unity的渲染引擎,我希望怎样以及何时渲染这个对象,这里的标签和Pass中的标签不一样) - Fallback
留一条退路&#