版本:Unity 6 (6000.0)
语言:English
为遮挡剔除设置场景
剔除移动的 GameObjects

为遮挡剔除设置多个场景

在运行时,Unity 每次只加载一个遮挡剔除一个禁用渲染对摄像机隐藏(遮挡)的 GameObjects 的过程。 更多信息
参见 术语表
数据资产,无论打开了多少个场景。因此,您必须根据计划一次加载一个场景场景包含游戏环境和菜单。可以将每个唯一的场景文件视为一个唯一的关卡。在每个场景中,您放置环境、障碍物和装饰,本质上是分段设计和构建游戏。 更多信息
参见 术语表
还是多个场景来以不同的方式准备遮挡剔除数据。

一次加载一个场景

如果您使用LoadSceneMode.Single一次加载一个场景,则必须分别为每个场景烘焙遮挡剔除数据,如下所示

  1. 在 Unity 编辑器中,打开要为其烘焙遮挡剔除数据的单个场景。
  2. 为场景烘焙数据。Unity 生成数据并将其保存为Assets/[Scene name]/OcclusionCullingData.asset。Unity 将对该资产的引用添加到打开的场景中。
  3. 保存场景。
  4. 对每个场景重复步骤 1、2 和 3。

在运行时,像这样加载您的场景

  1. 将场景加载为项目的默认场景,或使用 LoadSceneMode.Single。如果存在活动场景,Unity 将卸载该场景,以及其遮挡数据资产(如果存在)。然后,Unity 加载您的场景及其遮挡数据资产。

一次加载多个场景

如果您使用LoadSceneMode.Additive一次加载多个场景,则必须像这样一起烘焙这些场景的数据

  1. 在 Unity 编辑器中,打开 Unity 将在运行时加载的组的第一个场景。这将成为活动场景。
  2. 以附加方式打开组中的其他场景,以便所有场景都同时在 Unity 编辑器中打开。
  3. 为所有场景烘焙数据。Unity 为所有打开的场景生成数据,并将其保存为Assets/[active Scene name]/OcclusionCullingData.asset。Unity 将对该资产的引用添加到所有打开的场景中。
  4. 保存场景。

在运行时,像这样加载您的场景

  1. 将组的第一个场景加载为项目的默认场景,或使用LoadSceneMode.Single。如果存在活动场景,Unity 将卸载该场景,以及其遮挡数据资产(如果存在)。然后,Unity 加载您的场景以及共享的遮挡数据资产。
  2. 根据需要使用LoadSceneMode.Additive加载其他场景。如果 Unity 发现附加加载的场景的遮挡数据与活动场景的遮挡数据相同,则遮挡剔除按预期工作。

请注意,共享的遮挡数据资产的文件大小更大。使用更大的遮挡数据资产不会额外增加运行时 CPU 影响。

有关在 Unity 编辑器中使用多个场景的更多信息,请参阅有关多场景编辑的文档。

为遮挡剔除设置场景
剔除移动的 GameObjects