新建項目

往關卡中放置一個門
在內容瀏覽器中找到 門 的靜態網格體

拖放到關卡中

此時門默認沒有碰撞,人物可以直接穿過

給門添加碰撞
雙擊內容管理器中的 SM_Door,打開編輯窗口

選擇菜單“碰撞”-“添加盒體簡化碰撞”,給門添加碰撞框架

門周圍的綠邊框即是碰撞區域

通過縮放調整碰撞區域使其與門基本匹配

添加碰撞后保存,進入關卡可以發現人物已經無法穿過門

添加觸發器
將盒體觸發器拖入關卡中


調整觸發器大小及位置

將門設置為可移動
選中門,在細節面板中“變換”-“移動性”-切換為“可移動”

編輯關卡藍圖
操作快捷菜單“藍圖”-“打開關卡藍圖”


添加觸發器事件
從世界大綱視圖中選中觸發器對象“TriggerBox”

在空白處右鍵,添加 Begin Overlap 和 End Overlap 兩個事件

添加Rotation設置藍圖
從世界大綱中將門的對象 SM_Door 拖進關卡藍圖

從 SM_Door 拖出節點 SetActorRotation

添加時間軸藍圖
在空白處右鍵,搜索timeline,添加時間軸

雙擊打開時間軸,選擇“添加浮點型軌跡”

右鍵-添加關鍵幀,或按Shift+左鍵直接添加,添加兩個關鍵幀

選中關鍵幀,直接設定相應的值,這里我設置第一個關鍵幀 0s,值0;第二個關鍵幀2s,值85

覺得變化太生硬可以同時選中兩個關鍵幀,右鍵,關鍵幀插值-勾上“自動”即可

修改時間總長度,要與實際最開始的幀到最末尾的幀時間差相等

連接所有藍圖
將 SetActorRotation 中的 New Rotation 結構體分割開來,方便單獨賦值

最后,藍圖連線

編譯關卡藍圖后生效,運行關卡可以看到實現自動開關門

想進一步了解編程開發相關知識,與我一同成長進步,請關注我的公眾號“松果倉庫”,共同分享宅&程序員的各類資源,謝謝!!!
