Unity3D行為樹插件BehaviorDesigner(二-Behavior Designer概述)


Behavior Designer 是一個行為樹插件,是一款為了讓策劃,程序員,美術人員方便使用的可視化編輯器。Behavior Designer 提供了強大的 API 可以讓你輕松的創(chuàng)建 tasks(任務),配合 uScript 和 PlayMaker 這樣的插件,可以不費吹灰之力就能夠創(chuàng)建出強大的AI 系統(tǒng),而無需寫一行代碼,本文將介紹所有 Behavior Designer 的功能特性。如果你還不了解什么是行為樹(behavior trees)請查看“行為樹的概述”。依賴于 Behavior Designer插件, 你完全可以不用關心什么是行為樹(behavior trees)但是,如果你了解一些行為樹的知識,這將有助于你使用 Behavior Designer,包括一些常用組件, 例如:tasks(任務),action(行為),composite(復合) ,conditional(條件),decorator(修飾符),當你第一次打開 Behavior Designer,會出現下面的窗口:

這里一共分為四大部分:

下圖中的第一個部分是主要操作區(qū),用來創(chuàng)建你的行為樹。

第二部分是面板屬性區(qū),這里可以編輯一個行為樹的特定屬性,添加新任務,創(chuàng)建新的變量,或者編輯 tasks(任務)的參數。

第三部分是工具欄,你可以添加/刪除行為樹,鎖定當前行為樹,查看所有行為樹, 等等。

第四部分是調試工具欄。你可以啟動/停止,逐步調試,暫停,查看錯誤。

第一部分是主要的設計工作的區(qū)域,在這個區(qū)域,你可以創(chuàng)建新的Task(任務)和設計這些 Task(任務)的行為樹。第一步要做的就是創(chuàng)建一個行為樹 (behavior tree) ,通過右鍵選擇“Add Behavior Tree”可以創(chuàng)建新的 behavior tree 行為樹,或者通過上方的工具欄 Lock(鎖定)旁邊的加號添加一個新的行為。 一旦行為樹創(chuàng)建完畢,你就可以開始添加 tasks(任務)了。添加一個 task 可以通過右鍵點擊空白區(qū),或者左側 2 區(qū)中的 Tasks 標簽來創(chuàng)建。一旦你的 task 創(chuàng)建完畢,你將看到類似于下面圖中的效果:

這里的 Entry task 是默認添加的,作為根節(jié)點進行?添加后續(xù)的Task,這里能看到添加的 Sequence(序列)節(jié)點有錯誤,這是因為這個 Sequence 必須有后續(xù)子節(jié)點,只要添加了子節(jié)點,這個錯誤就會消失,現在我們已經有了第一個 Task,接下來讓我們多添加幾個:

你可以創(chuàng)建 Sequence(序列)節(jié)點,或者 selector(選擇器)節(jié)點,他們都是 task(任務)。通過多個這種節(jié)點的組合,你可以創(chuàng)建很深的層次結構。 如果在創(chuàng)建過程中你不小心搞錯了什么,那么選擇有錯誤的節(jié)點,delete 刪除掉即可。 Behavior Designer 的執(zhí)行順序是從左到右的順序執(zhí)行,并且是深度優(yōu)先。上圖中的執(zhí)行順序如下:SequenceA,SelectorA,SequenceB,ActionA,ActionB,ActionC,SelectorB,ActionD ,ActionE

現在我們已經有了一個基礎的行為樹,讓我們改改參數看看,選擇 ActionC 節(jié)點然后查看左側的屬性面板,選到 Inspector 視圖,你可以再這里重命名 這個 Task(任務)名稱,設置參數,或者輸入一個注釋在(Comment ).

在左側的界面中有出了 Inspector 還有其他三個標簽(Behavior,Tasks,Variables)Variables 面板允許你創(chuàng)建共享變量,并改變變量值。關于這個面板的具體信息,在后面章節(jié)介紹。Tasks 面板列出了所有可用的 tasks(任務)這里的 tasks 和你在空白區(qū)右鍵彈出的菜單中的 tasks 是一樣的,這個列表可以通過上方的搜索框輸入,快速定位到你想要創(chuàng)建的 tasks 任務,包括 action(行為),composite(復合),conditional(條件),decorator(修飾符)。最后一個面板,behavior 面板,顯示的是當前行為樹 Behavior Tree 組件的屬性,這個屬性也會出現在所捆綁的 Gameobject 的屬性面板上!各個面板具體介紹請看后續(xù)章節(jié)介紹。

最后的是工具欄,工具欄提供了例如添加/刪除等基礎的行為樹操作的工具,

上圖中 1 號位置的箭頭是用來預覽不同行為樹,如果在同一個 Gameobject 上添加了多個行為樹的話,2 號位置用來顯示所有行為樹,并可以選擇某個行為樹,3 號位置是當前場景中擁有行為樹的 Gameobject,可以展開下拉菜 單并查看和選擇,4 號位置也是用來選擇當前 Gameobject上的不同行為樹,如果有多個的話,5 號是刪除當前行為樹,6 號增加一個行為樹,7 號鎖定 當前行為樹試圖,不過因為在場景中點擊其他資源導致行為樹設計面板中的內容切換,8 號是保存當前行為樹, 9 號是導出當前行為樹作為一個 Scriptable 資源以便其他行為樹調用。

本人的個人網站:

http://www.swordmaster.info/

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。
禁止轉載,如需轉載請通過簡信或評論聯系作者。

相關閱讀更多精彩內容

  • Behavior Designer 概述 第一部分是主要的設計工作的區(qū)域!在這個區(qū)域,你可以創(chuàng)建新的 Task(任...
    JumboWu閱讀 51,069評論 5 57
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現,斷路器,智...
    卡卡羅2017閱讀 136,506評論 19 139
  • 雷鳴前炎熱如鍋上螞蟻,一縷縷童年的記憶涌上。 童年,農村的娃娃會幫家里做些農活,專職的牛郎說的就是我吧。小時候的我...
    不安心動閱讀 374評論 0 2
  • 滿眼血絲閱讀 289評論 0 0
  • “嘿,520了我要送你什么禮物呢” “哦(⊙o⊙)哦” “算了吧,嘻嘻” 世界很大, 而我們很小 在最美的年華里 ...
    方默默閱讀 258評論 0 2

友情鏈接更多精彩內容