蓝图类

本节我们在运行时生成一个球体,然后为其添加一个冲量。

1. 蓝图类

蓝图类可以看成是 C++ 类的一个可视化表现。我们可以从一个现有的 Actor,生成得到一个蓝图类。如图 1 所示,我们先在视口中添加一个球体,然后查看其细节窗体,其中也有一个和蓝图一样的图标。

我们点击这个图标,会弹出 从选项创建蓝图 的窗体,保持默认的 新建子类 选项,然后为类命名。

图1 生成蓝图类

创建好后,会出现一个如图 2 显示的蓝图类的窗体。我们点击其中的 Static Mesh Component 组件,细节和大纲视图里的细节很类似。我们在 材质 - 元素0 选项下可以设置材质。我这边选择了一个黄金材质。

图2 蓝图类

2. 动态生成 Actor

创建的蓝图类可以在内容侧滑菜单里找到。把蓝图类文件拖拽到视口里,可以基于此类生成一个实例。但我们想在运行时动态生成 Actor。

如图 3 所示,我们回到蓝图窗体,使用 SpawnActor 节点。SpawnActor 节点中的 Class 设置成我们创建的蓝图类。Spawn Transform 我们右击,选择 分割结构体引脚,然后设置其中的位置、旋转和缩放。这些 transform 参数,我们可以参照视口中物体的 transform 参数。

图3 蓝图

3. 添加冲量

如图 3 所示,添加冲量使用 Add Impulse 节点。冲量通过 Impulse 指定。

冲量=Δ动量=mΔv

为了方便,我们可以勾选 Vel Change。勾选后,Impulse 就会被视为速度的直接改变,可以无视质量。此处,我们对球作用一个向上的冲量。

以下是演示效果。