包含此页的版本:
不含此页的版本:
Unity 可以执行静态批处理Unity 用于在屏幕上绘制游戏对象的一种技术,用于将静态(非移动)游戏对象组合成大网格,并以更快的方式呈现它们。更多信息
请参阅术语表在构建时和运行时。作为一般规则,如果游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
请参阅术语表存在于场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,你放置你的环境、障碍物和装饰品,基本上是将你的游戏设计和构建成碎片。更多信息
请参阅术语表在构建应用程序之前,请使用编辑器在构建时对游戏对象进行批处理。如果您在运行时创建游戏对象及其网格,请使用运行时 API。
使用运行时 API 时,可以更改静态批处理根的转换属性。这意味着你可以移动、旋转或缩放构成静态批处理的整个网格体组合。您无法更改单个网格的变换属性。
若要对一组游戏对象使用静态批处理,游戏对象必须符合静态批处理的条件。除了常见用法信息中所述的条件外,请确保:
DisableBatching标记设置为 true。注意:要使用运行时静态批处理,你还必须将网格体设置为启用读/写。
有关静态批处理的性能影响的信息,请参阅性能影响。
为了提高渲染性能,你可以在编辑器中的构建时启用静态批处理。
然后,多个静态游戏对象被组合成一个批次,从而减少运行时的绘制调用次数。这在具有许多静态对象的项目中非常有用,例如大型非动态场景。
若要在生成时执行静态批处理,请执行以下作:
有关如何设置渲染器以便 Unity 可以对渲染器进行批处理的信息,请参阅使用绘制调用批处理。
注意:如果您在构建时使用静态批处理,则 Unity 不会在运行时使用任何 CPU 资源来生成静态批处理的网格体数据。
为了在运行时批处理静态网格,Unity 提供了 StaticBatchingUtility 类。静态 StaticBatchingUtility.Combine 方法组合了您传入的游戏对象,并为静态批处理做好准备。这对于您在运行时按程序生成的网格特别有用。
与构建时的静态批处理不同,运行时的批处理不需要启用静态批处理播放器设置。有关如何使用此API的信息,请参阅StaticBatchingUtility。