官方文档 https://docs.unity3d.com/Manual/SL-BuiltinIncludes.html
Unity的内置着色器可从官网下载
CGIncludes 目录下存放了所有内置着色器的头文件。
DefaultResources 目录存放了Unity 3D引擎内置的简单着色器。
DefaultResourcesExtra 目录提供了大量渲染效果的着色器实现。
DefaultResourcesExtra\Mobile 目录下的shader文件就是移动平台下的漫反射效果、粒子系统、法线贴图和光照贴图效果的实现。
Editor 目录中的文件StandardShaderUI.cs,该段代码是当材质文件使用了标准着色器时,材质对应的inspector界面的实现。
Unity内置着色器清单 | |
Shader文件 | 描述 |
AutoLight.cginc | 提供了一系列用来计算阴影的宏和函数 |
HLSLSupport.cginc | 对HLSL着色器语言用宏进行封装 |
Lighting.cginc | 对 Lambert、Phong、Blinn-Phong 等光照模型进行封装 |
UnityCG.cginc | 提供了大量着色器在开发时会用到的工具函数和宏 |
UnityGBuffer.cginc | 提供了用于延迟渲染的与G-Buffer操作相关的函数和宏 |
UnityGlobalIllumination.cginc | 提供了用于进行全局光照计算的工具函数 |
UnityImageBasedLighting.cginc | 提供了“基于图形照明”的相关操作的工具函数 |
UnityInstancing.cginc | 提供了使用GPU(图形处理器)多例化技术时用到的宏 |
UnityLightingCommon.cginc | 提供了全局光照计算所需要的结构体的定义 |
UnityMetaPass.cginc | 提供了与元渲染通路信息相关的函数和着色器变量 |
UnityPBSLighting.cginc | 提供了基于物理着色所需要的光照计算函数,可用于外观着色器 |
UnityShaderUtilities.cginc | 提供了把物体从模型空间变换到裁剪空间的工具函数 UnityObjectToClipPos |
UnityShaderVariables.cginc | 提供了进行着色器开发时由引擎底层传递给着色器程序的着色器变量 |
UnityShadowLibrary.cginc | 提供了计算阴影时用到的宏和工具函数 |
UnityStandardBRDF.cginc | 提供了标准着色器中用到的和BRDF(bidirectional reflectance distribution function, 双向反射分布函数)计算相关的工具函数 |
UnityStandardConfig.cginc | 标准着色器用到的一些开关配置信息 |
UnityStandardCore.cginc | 标准版的标准着色器的顶点和片元着色器的实现文件 |
UnityStandardCoreForward.cginc | 提供了标准版的标准着色器的顶点/片元入口函数 |
UnityStandardCoreForwardSimple.cginc | 提供了简化版的标准着色器的顶点/片元入口函数 |
UnityStandardInput.cginc | 标准着色器用到的一些顶点输入结构信息和输入计算函数 |
UnityStandardMeta.cginc | 标准着色器中元渲染通路的实现 |
UnityStandardShadow.cginc | 标准着色器中阴影投射渲染通路的实现 |
UnityStandardUtils.cginc | 标准着色器中一些辅助用工具函数的实现 |
内置着色器目录:{Unity安装目录}\Editor\Data\CGIncludes