Version: Unity 6.0 (6000.0)
语言 : 中文
内置渲染管线中的着色器方法
使用内置渲染管线中的内置着色器函数

从内置渲染管线中的着色器库导入文件

Unity 提供了若干文件供着色器程序用于引入预定义的变量和 helper 函数。这可以通过标准 #include 指令来完成,例如:

CGPROGRAM
// ...
#include "UnityCG.cginc"
// ...
ENDCG

Unity 中的着色器 include 文件采用 .cginc 扩展名,内置的着色器 include 文件包括:

  • HLSLSupport.cginc - _(自动包含)_此文件声明各种预处理器宏以帮助进行多平台着色器开发。
  • UnityShaderVariables.cginc - _(自动包含在 CGPROGRAM 着色器中)_此文件声明着色器中常用的各种内置全局变量
  • UnityCG.cginc - 常用的内置 helper 函数和数据结构。
  • AutoLight.cginc - 光照和阴影功能,例如表面着色器在内部使用此文件。
  • Lighting.cginc - 标准表面着色器光照模型;当你编写表面着色器时会自动包含该模型。
  • TerrainEngine.cginc - 地形和植被着色器的 helper 函数。

如果您要查看任何 helper 代码具体执行的操作,可在 Unity 应用程序中找到这些文件(Windows 上位于 {unity install path}/Data/CGIncludes/UnityCG.cginc__,Mac 上位于 /Applications/Unity/Unity.app/Contents/CGIncludes/UnityCG.cginc__)。

内置渲染管线中的着色器方法
使用内置渲染管线中的内置着色器函数