Version: Unity 6.0 (6000.0)
语言 : 中文
遮挡剔除
设置多个场景进行遮挡剔除

设置场景进行遮挡剔除

本页介绍如何设置场景以进行遮挡剔除、烘焙遮挡剔除数据以及对结果进行可视化。

设置场景

在开始之前,请确定场景中所有要设定为静态遮挡物 (Static Occluder)(这些游戏对象不会移动,但会阻挡后面的游戏对象)和静态被遮挡物 (Static Occludee)(这些游戏对象不会移动,但会被静态遮挡物遮挡)。一个游戏对象可以同时是静态遮挡物和静态被遮挡物。

适合作为静态遮挡物的游戏对象包括中型到大型的实体游戏对象(例如墙壁或建筑物)。要被设定为静态遮挡物,游戏对象必须满足以下条件:

请注意,如果使用了__ LOD__见__细节级别__。
See in Glossary
组,则 Unity 会使用静态遮挡物的基础细节级别游戏对象 (LOD0) 来确定要遮挡的对象。如果游戏对象的轮廓在 LOD0 和其他 LOD 级别之间变化很大,这个游戏对象可能不适合设定为静态遮挡物。

任何可能在运行时被遮挡的游戏对象都适合设定为静态被遮挡物,包括小的或透明的游戏对象。要被设定为静态被遮挡物,游戏对象必须满足以下条件:

  • 具有任何类型的 Renderer 组件
  • 在运行时不移动

确定了要设定为静态遮挡物和静态被遮挡物的游戏对象之后,便可以设置场景。

  1. 选择要设定为静态遮挡物的所有游戏对象。
  2. 在检视面板窗口中,打开静态编辑器标记 (Static Editor Flags) 下拉菜单,然后选择__遮挡物静态 (Occludee Static)__。
  3. 选择要设定为静态被遮挡物的所有游戏对象。
  4. 在检视面板窗口中,打开__静态编辑器标记 (Static Editor Flags)__ 下拉菜单,然后选择__被遮挡物静态 (Occludee Static)__。
  5. 将一个摄像机添加到场景中并选择该摄像机,或者选择一个现有摄像机。
  6. 在检视面板窗口中,确保启用了摄像机的遮挡剔除 (Occlusion Culling) 属性。

烘焙数据

遮挡剔除检视面板烘焙选项卡。
遮挡剔除检视面板烘焙选项卡。
  1. 在顶部菜单中,选择__窗口 (Window) > 渲染 (Rendering) > 遮挡剔除 (Occlusion Culling)__ 以打开遮挡剔除窗口
  2. 选择__烘焙 (Bake)__ 选项卡。
  3. 在检视面板窗口的右下角,按__烘焙 (Bake)__ 按钮。Unity 会生成遮挡剔除数据,将数据另存为项目中的资产,并将该资产与当前场景关联。

对结果进行可视化

遮挡剔除检视面板可视化 (Visualization) 选项卡。
遮挡剔除检视面板可视化 (Visualization) 选项卡。
  1. 确保遮挡剔除窗口和场景视图均为可见状态。当遮挡剔除窗口可见时,Unity 在场景视图中显示遮挡剔除数据和遮挡剔除弹出窗口。
  2. 在场景中选择一个摄像机。
  3. 移动摄像机并观察场景视图。当由于视锥体剔除或遮挡剔除而导致摄像机无法看到游戏对象时,您应该会看到游戏对象从视图中消失。
  4. 可以使用场景视图中的遮挡剔除弹出窗口来配置可视化设置。
  5. 如果需要,请调整遮挡剔除窗口的烘焙 (Bake) 选项卡中的__烘焙设置__,然后重复烘焙过程。

如果使用的是内置渲染管线,则可以使用场景视图模式__过度绘制 (Overdraw)__ 来查看正在发生的过度绘制数量,并可以使用游戏视图中的统计数据 (Stats) 面板来查看 Unity 正在渲染的三角形、顶点和批处理数量。

遮挡剔除
设置多个场景进行遮挡剔除