Hierarchy 窗口显示场景中的每个游戏对象,如模型、摄像机或预制件。可以使用 Hierarchy 窗口对场景中使用的游戏对象进行排序和分组。在 Scene 视图中添加或移除游戏对象时,也会从 Hierarchy 窗口添加或移除它们。
Hierarchy 窗口还可以包含其他场景,每个场景都包含自己的游戏对象。
Unity 使用父子层级视图或父子化的概念对游戏对象进行分组。一个对象可以包含继承其属性的其他游戏对象。可以将游戏对象链接在一起以帮助移动、缩放或变换游戏对象的集合。移动顶层对象或父游戏对象时,也会移动所有子游戏对象。
还可以创建嵌套父子游戏对象。所有嵌套对象仍然是原始父游戏对象或根游戏对象的后代。
子游戏对象会继承父游戏对象的移动和旋转。要了解与此相关的更多信息,请参阅关于变换组件的文档。
要在 Hierarchy 窗口中创建新游戏对象,请执行以下操作:
也可以按 Ctrl+Shift+N (Windows) 或 Command+Shift+N (macOS) 以创建新的空游戏对象。
注意:新游戏对象会自动在“重命名”模式下创建。要禁用此行为,请选择 Hierarchy 窗口中的 More (⋮) 菜单并取消选择 Rename New Objects。
要切换子游戏对象的可见性,请执行以下操作:
要创建子游戏对象,请执行以下操作:
可以将新游戏对象作为现有游戏对象的父项添加到 Hierarchy 视图中。
要创建父游戏对象,请执行以下操作:
也可以按 Ctrl+Shift+G (Windows) 或 Command+Shift+G (macOS) 以创建父游戏对象。
注意:如果设置了默认父游戏对象,则 Create Empty Parent 会将新游戏对象创建为默认父项的子项,而不是选定游戏对象的父项。
同级游戏对象是与另一个子游戏对象具有相同层级的游戏对象。要创建同级游戏对象,请执行以下操作:
要复制游戏对象,请右键单击目标游戏对象并选择 Duplicate。
也可以按 Ctrl+D (Windows) 或 Command+D (macOS) 以复制选定游戏对象。
可以剪切或复制选定游戏对象,然后将它粘贴为另一个游戏对象的子项。粘贴的子游戏对象会保留其世界位置。
要将游戏对象粘贴为子项,请执行以下操作:
也可以按 Ctrl+Shift+V (Windows) 或 Command+Shift+V (macOS) 以将游戏对象粘贴为子项。
可以将 Hierarchy 窗口中的任何游戏对象设为“默认父项”。将游戏对象拖动到 Scene 视图中时,Unity 会自动将该游戏对象设为设置为默认父项的游戏对象的子项。
要将游戏对象设为默认父项:
将游戏对象拖动到 Scene 视图中时,在 Hierarchy 窗口中,子游戏对象会在默认父游戏对象下方缩进。默认父游戏对象的名称为粗体。
要从游戏对象中移除默认父项状态,请执行以下操作:
以前是默认父项的游戏对象的名称不再是粗体。将游戏对象拖动到 Scene 视图中时,它会出现在 Hierarchy 窗口的顶层。换句话说,Unity 不会将此游戏对象设为以前是默认父项的游戏对象的子项。
每个场景只能设置一个默认父项。在 Hierarchy 窗口中,如果将一个游戏对象设置为默认父项,然后将同一场景中的不同游戏对象设为默认父项,则只有第二个游戏对象是默认父项。
如果在 Hierarchy 窗口中有多个场景,并且在每个场景中设置了默认父项,则在将游戏对象拖动到 Scene 视图时,Unity 会将活动场景中的默认父游戏对象设为新游戏对象的父项。
可以在 Shortcuts Manager 中为默认父项设置来设置键盘快捷键。在 Shortcuts 窗口中,将键盘快捷键分配给 Hierarchy 视图 > Set as Default Parent。如果未设置默认父项,并且在 Hierarchy 窗口中选择了游戏对象,请使用快捷键将此游戏对象设为默认父项。设置默认父项后,使用快捷键可从任何具有它的游戏对象中移除默认父项状态。
单击场景可见性图标可在 Scene 视图中隐藏和显示游戏对象,而无需更改它们在应用程序中的可见性。
选择场景拾取图标可切换是否能够在编辑期间在 Scene 视图中选择游戏对象。
这些控件在处理难以查看和选择特定游戏对象的大型或复杂场景时非常有用。
默认情况下,Hierarchy 窗口会按创建顺序列出游戏对象。可以在场景中向上或向下拖动选定游戏对象以更改游戏对象的顺序。
要按字母数字顺序对游戏对象进行排序,请执行以下操作:
选择后,一个图标会出现在 Hierarchy 窗口中,允许在 Transform 排序(默认值)或 Alphabetical 排序之间切换。
可以在 Hierarchy 窗口中同时打开多个场景。有关更多信息,请参阅多场景编辑页面。
When you edit a Prefab instance in a Scene, Unity displays a indicator next to the parent GameObject in the hierarchy. This indicator highlights any Prefab that has non-default override values in any of its child GameObjects. To open the Overrides dropdown directly from the Hierarchy window click on the override indicator. The override indicator appears as a blue line in the left side of the margin and is identical to the instance override in the Inspector window. For more information, see Instance overrides.