目錄
步驟
一、運用臨時場(外部張力)破裂幾何體集
二、使用構造場固定幾何體集
步驟
在上一篇中(【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”
此時我們再運行就可以發現角色無法推動幾何體集了。