版本:Unity 6 (6000.0)
语言 : 英语
动态批处理简介
启用动态批处理

Unity 如何批处理移动游戏对象

网格的动态批处理通过将所有顶点变换到世界空间中的 CPU 上来实现,而不是在 GPU 上。这意味着动态批处理Unity 的一个自动过程,它试图将多个网格渲染为单个网格,以优化图形性能。该技术在 CPU 上变换所有游戏对象顶点,并将许多相似的顶点组合在一起。 了解更多
参见 术语表
仅在变换工作比执行绘制调用消耗更少的资源时才是一种优化。

绘制调用的资源需求取决于许多因素,主要是图形 API。例如,在控制台或 Apple Metal 等现代 API 上,绘制调用开销通常要低得多,并且动态批处理通常不会提高性能。要确定在您的应用程序中使用动态批处理是否有益,请使用 分析器 在启用和禁用动态批处理的情况下分析您的应用程序。

Unity 可以对阴影投射器使用动态批处理,即使它们的材质不同,只要 Unity 在阴影传递中需要的材质值相同即可。例如,多个箱子可以使用具有不同纹理的材质。尽管材质资产不同,但这种差异与阴影投射器传递无关,Unity 可以对阴影渲染步骤中的箱子游戏对象Unity 场景中的基本对象,可以代表角色、道具、场景、相机、路点等。游戏对象的特性由附加到它的组件定义。 了解更多
参见 术语表
进行阴影批处理。

动态生成的几何体的动态批处理

以下渲染器会动态生成几何体,例如粒子系统和线条,可以使用动态批处理进行优化。

动态生成的几何体的动态批处理与网格的动态批处理不同

  1. 对于每个渲染器,Unity 会将所有可动态批处理的内容构建到一个大型顶点缓冲区中。
  2. 渲染器会为批次设置材质状态。
  3. 然后 Unity 会将顶点缓冲区绑定到 GPU。
  4. 对于批次中的每个渲染器,Unity 会更新顶点缓冲区中的偏移量并提交新的绘制调用。

这种方法类似于 Unity 如何提交 静态批处理Unity 使用的一种技术,它将屏幕上的游戏对象绘制到一起,将静态(非移动)游戏对象组合成大型网格,并以更快的速度渲染它们。 了解更多
参见 术语表
的绘制调用。

动态批处理简介
启用动态批处理