内容会持续更新,有错误的地方欢迎指正,谢谢!
引言
Unity Shader是Unity为开发者提供的高层级的渲染抽象层,它让开发者更加轻松地管理着色器代码以及渲染设置(如开启/关闭混合、深度测试、设置渲染状态等)。
Unity Shader的概述
Unity为我们准备的常用的三种Shader文件:
1. Standard Surface Shader:表面着色器(该着色器包含光照模型,使用了PBR的渲染方法)。
2. Unlit Shader:顶点/片元着色器(该着色器不包含光照模型)。
3. Image Effect Shader:实现屏幕后处理效果的基本模板。
Shader的Inspector面板中的部分常用参数解释:
1. Fixed function:Bool类型,固定函数着色器(已经被淘汰,不再使用)。
2. Cast Shadows:Bool类型,是否会有投射阴影。
3. Render queue:Int类型,使用的渲染队列。
4. Ignore projector:Bool类型,是否忽略投影。
5. Disable batching:Bool类型,是否关闭批处理。
ShaderLab
Unity提供的专门为Unity Shader服务的语言——ShaderLab。