Unity火爆插件Behavior Designer行為樹插件學習


    如果要讓游戲里的角色或者NPC能執行預設的AI邏輯,最簡單的用IF..ELSE...神器既可以實現,

但是再復雜的一般用經典的狀態機來切換狀態,但是寫起來比較麻煩。相對的,行為樹(Behavior Tree)理解和編輯起來就非常簡單了。

行為樹,其實也是一種有限狀態機,只不過形式上分層呈樹結構,人稱分層有限狀態機(HFSM)。

 

行為樹主要用四種節點來描述行為邏輯

--順序節點(Sequence):組合節點,順序執行子節點,只要碰到一個子節點返回FALSE,則返回FALSE;否則返回TRUE。

--選擇節點(Selector):組合節點,順序執行子節點,只要碰到一個子節點返回TRUE,則返回TRUE;否則返回FALSE。

--條件節點(Condition):葉節點,執行條件判斷,返回判斷結果。

--執行節點(Action):葉節點,執行設定的動作,一般返回TRUE。

 

比如:我們要表達一個最簡單的NPC AI :

如果碰到主角,打招呼;否則,睡覺。

行為樹的結構如下(其中黃色的是裝飾節點,這里當做CD定時器來處理,在CD時間內這個節點一直返回FALSE,否則返回TRUE):

 設計好這個圖,實現時將其轉化為xml或者lua table或者json或者其他層次化的表示供程序讀入,並構建好樹對象,整個執行流程偽代碼可能是這樣的:

function gameBrain.init()
    bt = btreee:new()
    bt.load("test.xml")
end

function gameBrain.update()
     bt.execute()
end

function main_cycle()
--...
brain.update()
--...
end

 

有了這樣一顆行為樹,如果我們改變Condition的條件及兩個不同的Action的具體操作,就可以實現各種各樣的IF...ELSE...的AI邏輯;你可能說這簡直就是簡單問題復雜化;對於上邊的這個邏輯的確是這樣。但是行為樹的優勢在於其可以用層次化的方式表述AI,甚至可以用很簡單的圖形化的方式來編輯AI,而不需要改動AI框架代碼。實施的時候,可以策划設計好行為樹結構,程序填寫Condition和Action即可;甚至可以做到代碼完全不動,程序預先寫好各種不同的Condition和Action供策划選用即可。

-------------------------------

 

在Unity中我們如何實現和應用行為樹呢?

以下為大家介紹[可視化插件] Behavior Designer 1.6.1 - 行為模式設計專用插件

  Behavior Designer提供了一個功能強大的API,使您可以輕松創建新任務。它還提供了一個直觀的可視化編輯器,包含數百個任務和PlayMaker / uScript集成,可以創建復雜的AI而無需編寫任何代碼!


行為設計師從一開始就設計得盡可能高效。因此,它在包括移動設備在內的所有平台上運行良好。它適用於Unity。

特征:
- 直觀的可視化編輯器
- 功能強大的API
- 可視運行時調試器
- 在任務之間進行通信的變量
- 有條件的中止
- 將現有代碼與反射任務一起使用
- 數以百計的任務
- 沒有額外的資產文件或編譯步驟
- 二進制或JSON序列化
- 包括運行時源代碼
- 豐富的文檔和教程視頻
- 在線提供示例項目
- 和更多

 

點擊下載 提取碼:2ave

 

需要繼續進行行為樹插件Behavior Designer的學習,可觀看下面的視頻教程講解

 

目錄

 

 

 

 

共24講,格式MP4,大小3GB,帶素材

 

掃碼時備注或說明中留下郵箱

付款后如未回復請至https://shop135452397.taobao.com/

聯系店主

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM