组件
组件 是一种特殊类型的对象,用作为 Actor 中的一个子对象。组件一般用于需要简单地切换的部件的地方,以便改变具有该组件的 Actor 的某个特定方面的行为或功能。比如,一辆汽车的控制机及运动和飞机是有很大差别的,而飞机的控制和运动又和船有很大区别,以此类推;然而,所有这些都是交通工具,它们存在一些共性。通过使用一个组件来处理这些控制及运动,可以很轻松地使得同一交通工具的行为变得像任何一种特定类型的交通工具。
For more information on Components, please see the Components Overview documentation.
组件窗口
Components(组件) 面板允许组件一创建就添加到 蓝图 上。这提供了一种方法,使得可以通过 CapsuleComponents
、 BoxComponents
或 SphereComponents
来添加
碰撞几何体,
可以通过 StaticMeshComponents
或 SkeletalMeshComponents
的形式添加渲染几何体,
通过使用 MovementComponents
控制运动等。您还可以将添加到 Components(组件) 列表中的组件,
分配给这个蓝图或其他 蓝图 中用于访问这些组件的实例变量。
添加组件
要想在 组件 列表中向 蓝图 添加一个组件:
从该下拉列表中选择您想添加的组件类型,比如一个 **
CameraComponent(相机组件)
** 。
按下 按钮来添加此新组件。
要想通过拖拽并放置方式来添加一个组件:
组件也可以这样进行添加,即通过从内容浏览器中拖拽 StaticMesh 、 SoundCue 、 SkeletalMesh 和 ParticleSystem 资源并将其放置到 组件列表中。
删除组件
要想从 Components(组件) 列表中删除一个组件,仅需简单地右击该组件的名称并选择 Delete(删除) 即可。
组件资源
要想把一个资源分配给 组件列表 中的一个组件:
在内容浏览器中,选择要分配的资源。该资源类型必须和组件类型 相兼容。
在 组件 面板中,选择您想将该资源赋予的组件。该组件的详细信息将会出现在 详细信息 面板中。
按下 详细信息 面板的 [Asset(资源)] 部分中的
按钮。这样该资源就分配给了该组件。
要想清除已分配给组件的资源:
点击 详细信息 面板的 [资源] 部分中的 Current Asset(当前资源) 下拉菜单。
在出现的菜单中选择 Current Asset(当前资源) 下的 Clear(清除) 选项。
该已分配的资源会被清除。
要想在内容浏览器中浏览已分配的资源。
按下 详细信息 面板的 [Asset(资源)] 部分中的 按钮。内容浏览器将会打开并显示了已分配的资源,且该资源处于选中状态。
重命名组件实例变量
组件列表 中创建的组件将会具有一个基于其类型自动生成的变量名称。要想修改这些变量的名称:
在 组件列表 中选择该变量,其详细信息将出现在 Details(详细信息) 面板中。
在 详细信息 面板的 组件 部分的 Variable Name(变量名称) 文本域中,为该变量输入一个新名称。
组件事件和函数
根据组件类型的不同,您可以基于它们在事件图表中添加事件 和/或 函数。比如,另一个actor(比如一个Pawn)穿过 Box Component时,该Box Component可以有一个Overlap事件。以这种方式创建的任何事件或函数都是针对那个特定函数的,不必测试来确认它所涉及的组件。
创组件事件非常简单,如下所示:
创建一个可以为其创建事件的组件。在这个示例中,我们使用一个BoxComponent(盒体组件)。
为您的组件提供一个名称 - 这会为其创建一个变量。
在 Variables(变量) 选卡中,选择该新变量。
在 图表 选卡中,右击弹出关联菜单。如果该组件有任何相关联的事件或函数,都会在顶部列出这些事件或函数。
在这个示例中,我们添加了一个 Overlap事件,每当有actor穿过这个Box Component体积时都会调用该事件。
不是所有的组件都有相关联的事件。比如,一个Point Light Component(点光源组件)仅具有函数。