行為樹的理解:
傳統的AI習慣用FSM來管理狀態規則,一個管理類對多個狀態類進行管理。
FSM可以通過轉換狀態來處理(如:泰坦之旅),
也可以讓狀態并行處理(如:mythos). 另外為了處理某種狀態下的某種子行為,派生出了
分層狀態機(mythos通過棧來實現分層)。
FSM為了處理并行以及分層,在處理上讓人感覺不是非常清晰。而行為樹天生就是分層的,每一層又是并行的
通過條件以及控制結點可以清晰地使用圖形化來控制各種分支行為。
個人覺得搞行為樹就像是在搞流程圖
一般的行為樹都會有控制結點、條件結點、動作結點。
用控制結點根據不同的條件結點讓程序按不同的控制結點分支進行運行,當某些條件結點成立觸發相應的動作結點。
為了控制分支,控制結點有選擇、序列、并行等方式控制。同時還有一些用于裝飾的如循環、結果取反等之類的特殊結點。
光暈2、LOL等游戲用了行為樹。
可以參考:
行為樹
http://aigamedev.com/premium/tutorial/second-generation-behavior-trees/
行為樹
http://aigamedev.com/premium/interview/league-of-legends/
posted on 2012-09-24 14:46
flipcode 閱讀(949)
評論(0) 編輯 收藏 引用