Language:
Page Info
Skill Level:
Engine Version:
Share

如何应用物理约束配置文件

先决条件页面

在阅读本页面前应对以下页面有所了解,如尚不了解,则请先浏览以下页面。

下面介绍了创建简单图以在 Pawn骨架网格体组件 上启用 约束配置文件 的步骤。

步骤

  1. 打开或创建带有 骨架网格体组件 的蓝图。

    • 如果您的蓝图不包含 骨架网格体组件,请使用 组件面板 添加一个。

    addSkelMeshComp.png

  2. 调整 骨架网格体组件 碰撞设置。

    • 需要更改“碰撞预设”,以便 骨架网格体组件 启用碰撞,如果 Pawn 胶囊体(或其他几何结构)存在,确保碰撞设置兼容。例如,对于 Pawn 胶囊体,确保忽略 Pawn 碰撞:

      collisionSettings.png

      您会注意到 对象类型(Object Type) 设置为 Pawn,并且我们在碰撞通道中忽略了 Pawn。这就解决了 骨架网格体 试图从碰撞胶囊体 中弹出自己的问题。但是,如果您希望 骨架网格体 与其他 Pawn 碰撞,将需要调整 骨架网格体对象类型,然后更改 胶囊体 与该 对象类型 的互动方式。请参见:为项目添加自定义物体类型 以了解有关创建 自定义碰撞通道 的更多信息。

  3. 使用 组件面板 向蓝图添加 物理动画组件

    addPhysAnimComp.png

  4. 添加名称变量并将其命名为 骨骼名称(Bone Name)

    variableName.png

  5. 进行编译,以便设置 骨骼名称(Bone Name) 变量的值。

    compile.png

  6. 骨骼名称(Bone Name) 的默认值设置为所需目标 骨骼,在本例中为spine_01

    boneName.png

  7. 切换到 事件图表

  8. 找到或创建 事件开始播放(Event BeginPlay) 事件节点。

    eventBP.png

  9. 添加对 骨架网格体组件 的引用

    addSKMPref.png

  10. 骨架网格体组件 上拉出蓝色引脚,并搜索_设置约束(Set Constraint)_。

    createSetAll.png

  11. 添加 全局设置约束配置文件(Set Constraint Profile for All) 节点。

    • 目标(Target) 是您的 骨架网格体组件

    • 配置文件名称(Profile Name) 是您在 物理资源工具(Physics Asset Tool) 中已经创建(或将要创建)的 约束配置文件(Constraint Profile)。 *(可选)**找不到则默认(Default if Not Found)**,如果配置文件中不存在某个骨骼,将保持当前设置。

    constraintProfNodeSettings.png

  12. “在模拟物理下设置所有形体(Set All Bodies Below Simulate Physics)”节点已连接到 应用下面的物理动画配置文件(Apply Physcial Animation Profile Below) 节点。

    • 目标(Target) 是您的 骨架网格体组件

    • 在骨骼名称中(In Bone Name) 将以 骨骼名称(Bone Name) 变量为输入。

    • 新模拟(New Simulate) 应设置为 True

    • 同样,由于我们使用spine_01作为目标骨骼,因此应选中 包含自身(Include Self)

  13. 最终图:

    Copy Node Graph

    fullGraph.png

    隐藏图信息

    变量

    说明

    骨骼名称(Bone Name)

    spine_01

    我们在 在模拟物理下设置所有形体(Set All Bodies Below Simulate Physics) 中用它来定义骨架网格体正在模拟的是哪个部位。

    组件

    说明

    骨架网格体组件(Skeletal Mesh Component)

    作为 约束配置文件 应用目标的 骨架网格体组件。如果您是从 角色(Character) 继承,该组件就只会命名为网格体

结果

现在,在运行游戏时,约束配置文件 将发挥作用。根据设置,这可能表示角色会四分五裂,或者加入马达以使手臂甩出去进行攻击。

result.png

要实现这种效果,可以将上臂约束的 线性限制(Linear Limits) 设置为 自由(Free)

achievedBy.png

其他资源