Cave: 游戏用户界面 (Game UI) 系统
用户界面工具包和实体层级
Lesson 2 of 6 • 10 XP
Keep your place in this quest
Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.
在本课程中,我们将学习Cave Engine的实体父子系统是如何工作的。
该功能可以与场景中的任何类型的实体一起使用,使您能够在对象之间创建有组织的层级关系。
在创建用户界面时,这变得尤其有用。通过将一个UI元素定义为其他UI元素的父元素,位置、缩放和可见性等变换会自动传播到子元素。
这使得界面组织变得更容易,简化了菜单和面板的编辑,并使得管理更复杂的UI结构更有效。
1. 创建UI工具包元素
除了之前创建的UI元素默认外,使用UI工具包再添加三个界面元素:
- 输入滑块
- 输入数字
- 输入文本
我们将实际测试每个元素在游戏中的表现。
然后,我们将使用这些组件通过将它们作为UI元素默认的子元素来创建一个实体层级结构,以演示父子系统如何帮助组织界面。

2. 测试UI工具包元素
在测试使用UI工具包创建的元素之前,如果您正在使用Cave Engine的第三人称游戏模板,请在场景中禁用玩家和车辆。
这很重要,因为其中一个实体在游戏运行时可能会控制鼠标光标。
在光标自由的情况下,您将能够正确与界面元素(如输入滑块、输入数字和输入文本)进行交互,从而在没有干扰的情况下测试它们的所有功能。

按F5运行游戏。
在执行期间,您将能够与创建的元素进行交互。
输入滑块和输入数字允许您通过鼠标交互修改它们的值,而输入文本允许您直接在界面中输入文本。
这是测试每个元素并理解它们实际用途的好时机。
例如:
- 输入滑块非常适合音量或亮度等设置
- 输入数字适用于精确的数值
- 输入文本在玩家需要输入信息时很有用

3. 层级
现在让我们看看UI元素之间的层级是如何工作的。
选择UI元素默认,在属性面板中调整其缩放值。
通过更改这些值,您可以增加或减少元素的大小。

要在实体之间创建父子关系,单击并拖动您要转换为子元素的UI元素,并将其放在UI元素默认上方,后者将成为父实体。
这是整个引擎使用的相同层级概念:子元素附着于父元素并开始跟随它。

创建该父子关系后,子元素将自动跟随父元素的变换。
这意味着对UI元素默认施加的位置、缩放和可见性等更改也将影响所有子元素。
在构建菜单和界面面板时,这非常有用。
例如,如果您将菜单面板作为父元素,并将多个按钮、文本和输入字段作为子元素,您只需编辑父元素即可移动或调整整个菜单的大小。
而不是逐个调整每个界面元素,您可以将它们组织成组,使整个UI更容易编辑和维护。

至此,您不仅学习了如何创建和测试UI工具包元素,还学习了如何使用层级组织它们。
这是在Cave Engine中构建更大界面时最重要的概念之一,因为它有助于保持您的UI更清晰、更模块化,更容易管理。