包含此页的版本:
不含此页的版本:
您可以使用 Unity着色器在 GPU 上运行的程序。更多信息
请参阅术语表指令快捷方式,以创建着色器关键字和变体集。例如,以下示例将SHADOWS_DEPTH和SHADOWS_CUBE关键字和变体:
#pragma multi_compile_shadowcaster
| 捷径 | Unity 添加的着色器关键字 | Unity 添加了一个着色器变体,所有关键字都关闭了 | 使用着色器变体的着色器通道 |
|---|---|---|---|
multi_compile_fog |
FOG_LINEAR,FOG_EXP,FOG_EXP2
|
是的 | 雾 |
multi_compile_fwdadd |
POINT DIRECTIONAL SPOT POINT_COOKIE DIRECTIONAL_COOKIE
|
不 | PassType.ForwardAdd |
multi_compile_fwdadd_fullshadows |
POINT,DIRECTIONAL,SPOT,POINT_COOKIE,DIRECTIONAL_COOKIE,SHADOWS_DEPTH SHADOWS_SCREEN SHADOWS_CUBE SHADOWS_SOFT SHADOWS_SHADOWMASK,LIGHTMAP_SHADOW_MIXING
|
不 |
PassType.ForwardAdd. 添加了灯光具有实时阴影的功能。 |
multi_compile_fwdbase |
DIRECTIONAL,LIGHTMAP_ON,DIRLIGHTMAP_COMBINED,DYNAMICLIGHTMAP_ON,SHADOWS_SCREEN,SHADOWS_SHADOWMASK,LIGHTMAP_SHADOW_MIXING,LIGHTPROBE_SH
|
不 |
PassType.ForwardBase. |
multi_compile_fwdbasealpha |
DIRECTIONAL,LIGHTMAP_ON,DIRLIGHTMAP_COMBINED,DYNAMICLIGHTMAP_ON,LIGHTMAP_SHADOW_MIXING,VERTEXLIGHT_ON,LIGHTPROBE_SH
|
不 | PassType.ForwardBase |
multi_compile_instancing |
INSTANCING_ON. 还添加PROCEDURAL_ON如果您的项目使用过程实例化。 |
是的 | 实例化 |
multi_compile_lightpass |
POINT,DIRECTIONAL,SPOT,POINT_COOKIE,DIRECTIONAL_COOKIE,SHADOWS_DEPTH,SHADOWS_SCREEN,SHADOWS_CUBE,SHADOWS_SOFT,SHADOWS_SHADOWMASK,LIGHTMAP_SHADOW_MIXING
|
不 | 绘制实时光影的所有通道,但光源探针光源探针存储有关光线如何穿过场景中的空间的信息。排列在给定空间中的光源探针集合可以改善移动对象的光照和该空间内的静态LOD场景。更多信息 请参阅术语表. |
multi_compile_particles |
SOFTPARTICLES_ON |
是的 | 粒子系统通过在场景中生成大量小型 2D 图像并为其设置动画来模拟流体实体(如液体、云和火焰)的组件。更多信息 请参阅术语表通过。 |
multi_compile_prepassfinal |
LIGHTMAP_ON,DIRLIGHTMAP_COMBINED,DYNAMICLIGHTMAP_ON,UNITY_HDR_ON,SHADOWS_SHADOWMASK,LIGHTPROBE_SH
|
是的 | PassType.Deferred |
multi_compile_shadowcaster |
SHADOWS_DEPTH,SHADOWS_CUBE
|
不 | PassType.ShadowCaster |
multi_compile_shadowcollector |
SHADOWS_SPLIT_SPHERES,SHADOWS_SINGLE_CASCADE
|
是的 | 屏幕空间阴影。 |
您可以使用skip_variants指令来删除您不使用的关键字。
例如,以下示例将关键字添加到multi_compile_fwdaddset,但删除了POINT和POINT_COOKIES变种。
#pragma multi_compile_fwdadd
#pragma skip_variants POINT POINT_COOKIE
有关删除变体的更多信息,请参阅条带着色器变体。