包含此页的版本:
不含此页的版本:
Unity 可以执行静态批处理Unity 用于在屏幕上绘制游戏对象的一种技术,用于将静态(非移动)游戏对象组合成大网格,并以更快的方式呈现它们。更多信息
请参阅术语表在构建时和运行时。作为一般规则,如果游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
请参阅术语表存在于场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,你放置你的环境、障碍物和装饰品,基本上是将你的游戏设计和构建成碎片。更多信息
请参阅术语表在构建应用程序之前,请使用编辑器在构建时对游戏对象进行批处理。如果您在运行时创建游戏对象及其网格,请使用运行时 API。
使用运行时 API 时,可以更改静态批处理根的转换属性。这意味着你可以移动、旋转或缩放构成静态批处理的整个网格体组合。您无法更改单个网格的变换属性。
若要对一组游戏对象使用静态批处理,游戏对象必须符合静态批处理的条件。有关如何设置渲染器以便 Unity 可以对渲染器进行批处理的信息,请参阅使用绘制调用批处理。
若要对游戏对象使用静态批处理,以下条件必须全部满足:
DisableBatching标记设置为true.Mesh-isReadableAPI 获取更多信息。有关静态批处理的性能影响的信息,请参阅性能影响。
静态批处理比动态批处理一种自动 Unity 过程,它尝试将多个网格渲染为单个网格,以优化图形性能。该技术转换 CPU 上的所有游戏对象顶点,并将许多相似的顶点组合在一起。更多信息
请参阅术语表因为静态批处理不会转换 CPU 上的顶点。有关静态批处理的性能影响的更多信息,请参阅性能影响。
本节包括有关渲染管线 获取场景内容并将其显示在屏幕上的一系列作。Unity 允许您从预构建的渲染管道中进行选择,或编写自己的渲染管道。更多信息
请参阅术语表静态批处理的兼容性。
| 特征 | 通用渲染管线(URP) | 高清渲染管线 (HDRP) | 自定义可编写脚本的渲染管线(SRP) | 内置渲染管线 |
|---|---|---|---|---|
| 静态批处理 | 是的 | 是的 | 是的 | 是的 |
使用静态批处理需要额外的 CPU 内存来存储组合的几何体。如果多个游戏对象使用同一个网格,Unity 会为每个游戏对象创建一个网格副本,并将每个副本插入到组合网格中。这意味着相同的几何体在组合网格中多次出现。
无论您是使用编辑器(请参阅在构建时启用静态批处理)还是运行时 API(请参阅在运行时启用静态批处理)来准备游戏对象以进行静态批处理,Unity 都会执行此作。
如果要优先考虑较小的内存占用,则可能需要降低渲染性能并避免对某些游戏对象进行静态批处理。例如,在茂密的森林环境中将树标记为静态可能会对内存产生严重影响。
注意:每个静态批次最多可以包含 64,000 个顶点。如果还有更多,Unity 将创建另一个批次。