UE4 行爲樹任務節點

         行爲樹中最終要的節點就是任務節點,作爲行爲樹的葉子節點,它主管了所控制actor的所有動作行爲信息。比如我們需要控制一個角色移動,攻擊,等待,或者逃跑等等,這些動作都需要放進任務節點中。當然在UE4中,除了我們自己建立的任務節點外,還有系統爲我們默認設置的一些節點,比如等待節點,運行另外一個行爲樹節點,播放聲音節點,詳情可以參考https://docs.unrealengine.com/latest/CHN/Engine/AI/BehaviorTrees/NodeReference/Tasks/index.html。

        這裏我主要寫一下行爲樹任務節點剛開始學習時候的一些注意的部分。

        1. 首先控制應該寫在 Event Receive Execute 或 Event Receive Execute AI中,推薦使用後者,跟裝飾器時候的原因相同,後者在AI行爲樹中使用比較方便。

        2. 任務節點必須用 Finish Execute 事件作爲結束回調,不然行爲樹運行到該節點時候,不會產生返回,永遠的卡在該節點上。

        3. 爲了防止任務節點卡主,可以在任務節點加上 timelimit的裝飾器節點,強制其在一定時間內結束。

如下圖:



再附一張任務節點在行爲樹中運行的樣子,


還需要注意的一點是,當任務節點在運行時候,其他的節點並不會執行,比如該任務節點需要運行10秒,但是運行了5秒的時候,有其他數據發生了變化,那麼它需要在10秒後才能對該節點做出反應。所以儘量把任務節點細化到比較短的時間段內,這樣才能讓AI比較快速的反應數據的變化。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章