Version: Unity 6.0 (6000.0)
语言 : 中文
Quaternion 的旋转和方向
停用游戏对象

静态游戏对象

如果游戏对象在运行时未移动,则被称为静态游戏对象。如果游戏对象在运行时移动,则被称为动态游戏对象。

Unity 中的许多系统都可以在编辑器中预计算有关静态游戏对象的信息。由于静态游戏对象不会移动,所以这些计算的结果在运行时仍然有效。这意味着 Unity 可以节省运行时计算成本,并可能提高性能。

Static Editor Flags 属性

在检视面板 (Inspector) 中查看游戏对象时显示的静态编辑器标志 (Static Editor Flags) 复选框和下拉选单
在检视面板 (Inspector) 中查看游戏对象时显示的静态编辑器标志 (Static Editor Flags) 复选框和下拉选单

Static Editor Flags 属性列出了许多 Unity 系统,这些系统可以在预计算中包含一个静态游戏对象。使用下拉选单可定义哪些系统在其预计算中包含此游戏对象。在运行时设置 Static Editor Flags 对这些系统没有影响。

仅当系统需要了解某个游戏对象时,才应将该游戏对象包含在预计算中。如果系统无需了解某个游戏对象,但仍然将该游戏对象包含在预计算中,可能会导致计算资源浪费、产生不必要的大数据文件或意外行为。

Static Editor Flags 属性位于游戏对象的检视面板的最右上角。该属性包含一个复选框(将值设置为全部 (Everything) 或无 (Nothing))和一个下拉选单(可选择要包含的值)。

要在代码中设置 Static Editor Flags 属性,请使用 GameObjectUtility.SetStaticEditorFlags API 和 GameObject.isStatic。要在代码中获取 Static Editor Flags 属性的状态,请使用 GameObjectUtility.GetStaticEditorFlags API。

可用值如下:

属性 描述
Nothing 对于任何系统,都不将游戏对象包含在预计算中。
Everything 对于下方的任何系统,都将游戏对象包含在预计算中。
Contribute GI 如果启用此属性,Unity 在全局光照计算中包含目标网格渲染器。这些计算发生在烘焙时预计算光照数据时。ContributeGI 属性公开 ReceiveGI 属性。ContributeGI 属性仅在对目标场景启用全局光照设置(如烘焙全局光照 (Baked Global Illumination) 或 Enlighten 实时全局光照 (Enlighten Realtime Global Illumination))时生效。有关其他上下文,请参阅 Unity 中的内置渲染管线和照明的设置教程。
Occluder Static 在遮挡剔除系统中,将游戏对象标记为静态遮挡物。请参阅遮挡剔除系统以了解更多信息。
Occludee Static 在遮挡剔除系统中,将游戏对象标记为静态被遮挡物。请参阅遮挡剔除系统以了解更多信息。
Batching Static 将游戏对象的网格与其他符合条件的网格组合起来,有可能降低运行时渲染成本。有关更多信息,请参阅有关静态批处理的文档。
Navigation Static 在预计算导航数据时包含游戏对象。此工作流程已弃用,无法在此处设置静态导航 (Navigation Static)。但是,您仍然可以使用 StaticEditorFlags.NavigationStatic 在代码中设置此选项。
不要使用 Navigation Static 标志,而是将导航网格修改器 (NavMesh Modifier) 组件与导航网格表面 (NavMesh Surface) 一起使用。
Off Mesh Link Generation 在预计算导航数据时,尝试生成一个从该游戏对象开始的网格外链接。此工作流程已弃用,无法从此菜单中设置网格外链接生成 (Off Mesh Link Generation)。但是,您仍然可以使用 StaticEditorFlags.OffMeshLinkGeneration 在代码中设置此选项。
不要使用 Off Mesh Link Generation 标志,而是将导航网格修改器 (NavMesh Modifier) 组件与导航网格表面 (NavMesh Surface) 一起使用。
Reflection Probe 为类型 (Type) 属性设置为烘焙 (Baked) 的反射探针预计算数据时,包含此游戏对象。有关更多信息,请参阅反射探针。

其他资源

Quaternion 的旋转和方向
停用游戏对象