目录
步骤
一、运用临时场(外部张力)破裂几何体集
二、使用构造场固定几何体集
步骤
在上一篇中(【UE5.1】Chaos物理系统基础——01 创建可被破坏的物体)我们已经创建了可被破碎的几何体集,在最后我们防止几何体集自动破碎,接下来我们需要通过场系统施加外力,达到几何体集的伤害阈值,从而触发破碎效果。
一、运用临时场(外部张力)破裂几何体集
1. 新建一个蓝图类,父类选择“FieldSystemActor(场系统actor)”
这里命名为“BP_ForceField”
打开“BP_ForceField”,在事件图表中添加如下节点,表示2s后会产生一个由中心点向外爆发的张力
添加一个球形碰撞组件和径向衰减组件
继续添加如下节点,表示临时场的衰减幅度为500000,衰减半径为球形碰撞组件的半径
2. 我们将“BP_ForceField”放置到几何体集的旁边
此时运行可以看到2s后,几何体集被破裂开
二、使用构造场固定几何体集
当我们控制的角色碰到几何体集时会推动几何体集,如下所示:
如果我们不希望角色能够移动几何体集,我们可以通过场系统固定住几何体集的底部,几何体集的上部任然可以破碎。
1. 新建一个蓝图类,父类选择“FieldSystemActor”
这里命名为“BP_AnchorField”
打开“BP_AnchorField”,添加一个盒体碰撞组件、剔除域、统一整数、盒体衰减组件
添加一个变量,这里命名为“ObjectState”,变量类型为“E对象状态类型”
默认值设置为“静态”
在构造脚本中添加如下节点,创建了一个构造场,并剔除盒体碰撞区域外的构造场
2. 将“BP_AnchorField”放在几何体集的底部
3. 选中场景中的几何体集,添加一个初始化场,设置初始化场为“BP_AnchorField”
此时我们再运行就可以发现角色无法推动几何体集了。