包含此页的版本:
不含此页的版本:
这DisableBatchingSubShader 标签阻止 Unity 应用动态批处理 (Dynamic Batching)一种自动 Unity 过程,它尝试将多个网格体渲染为单个网格体,以优化图形性能。该技术转换 CPU 上的所有游戏对象顶点,并将许多相似的顶点组合在一起。更多信息
请参阅术语表到使用此子着色器的几何体。
这对于着色器在 GPU 上运行的程序。更多信息
请参阅术语表执行对象空间作的程序。动态批处理将所有几何体转换为世界空间,这意味着着色器程序无法再访问对象空间。因此,依赖于对象空间的着色器程序无法正确呈现。若要避免此问题,请使用此 SubShader 标签来防止 Unity 应用动态批处理。
此示例代码创建 DisableBatching 值为True:
Shader "ExampleShader" {
SubShader {
Tags { "DisableBatching" = "True" }
Pass {
…
}
}
}