包含此页的版本:
不含此页的版本:
此页面包含有关使用着色器在 GPU 上运行的程序。更多信息
请参阅术语表代码块。有关编写 HLSL 本身的信息,请参阅 编写 HLSL 着色器程序。
HLSLPROGRAM和HLSLINCLUDE兼容所有渲染管线 获取场景内容并将其显示在屏幕上的一系列作。Unity 允许您从预构建的渲染管道中进行选择,或编写自己的渲染管道。更多信息
请参阅术语表.
| 签名 | 功能 |
|---|---|
HLSLPROGRAM[source code for shader programs]ENDHLSL
|
创建着色器程序块。Unity 将 HLSL 着色器程序添加到包含此着色器程序块的通道中。 |
HLSLINCLUDE[code that you want to share]ENDHLSL
|
创建着色器包含块。Unity 将此代码包含在HLSLPROGRAM块,在此源文件中的任何位置。 |
CGPROGRAM和CGINCLUDE仅与内置渲染管线兼容。对于大多数用途,使用HLSLPROGRAM和HLSLINCLUDE相反,除非你写表面着色器 为内置渲染管线编写着色器的简化方法。更多信息
请参阅术语表.
如果您使用CGPROGRAM,Unity 默认包含多个 Unity 的内置着色器包含文件,使您能够使用内置变量和函数。因此,使用CGPROGRAM如果将关键字更改为HLSLPROGRAM.
注意:虽然内置渲染管线中的着色器库文件具有 .cginc 文件扩展名,但它们包含 HLSL 代码而不是 CG 代码。
| 签名 | 功能 |
|---|---|
CGPROGRAM[source code for shader programs]ENDCG
|
创建着色器程序块。Unity 将着色器程序添加到包含此着色器程序块的通道中。 |
CGINCLUDE[code that you want to share]ENDCG
|
创建着色器包含块。Unity 将此代码包含在CGPROGRAM块,在此源文件中的任何位置。 |