iT邦幫忙

2025 iThome 鐵人賽

DAY 18
0

今天來製作敵人的 AI 系統,這裡使用 Behaviour Tree 來更直觀的製作 AI 行為。
如果之後要加更複雜的行為模式的話還是可以使用 C++ 寫 Task 然後加在 Behavior Tree 裡。

1. 新增

從左到右 (都在 Artificial Intelligence 底下)

  • Blackboard - 存放 Ai 變數。
  • AI Contoller Blueprint - 讓 Character 能夠被 Behavior Tree 操控。
  • Behavior Tree
    https://ithelp.ithome.com.tw/upload/images/20251002/20171036DmObfnwfT7.png

2. 行為樹設置

  • 在 Blackboard 新增 Obejct Key 作為目標(玩家)
    https://ithelp.ithome.com.tw/upload/images/20251002/20171036AyCtGTB5uG.png
  • 將 Base Class 設為 Actor
    https://ithelp.ithome.com.tw/upload/images/20251002/20171036s0u5Otpg5z.png
  • Behavior Tree
    • Root - 整個 Behavior Tree 的起點。
    • Selector - 從左到右依次執行子節點,遇到第一個成功的子節點就停止。
    • Sequence - 從左到右依次執行子節點,遇到失敗就停止。
      https://ithelp.ithome.com.tw/upload/images/20251002/20171036CyzRug9Qww.png

3. AI Controller

  • 當場景開始時執行行為樹,並設置剛剛在 Blackboard 設的 Target 為 玩家。
    https://ithelp.ithome.com.tw/upload/images/20251002/20171036is4s2R5YMM.png

4. 在敵人身上選擇 AI Controller Class (需有 Character Movement Component)

https://ithelp.ithome.com.tw/upload/images/20251002/20171036W81qImHaxP.png

5. !!重要!! 要新增 NavMeshBounds 並附蓋移動場景

定義 AI 可移動區域 (新增後按 P 可以顯示區域)

最後就完成敵人 AI 的第一步拉!

https://ithelp.ithome.com.tw/upload/images/20251002/20171036uZPlXMJZR2.png

記得敵人的 Class 必須是 Character Class,AI Controller 是基於 Character Movement Component 給予控制的。


上一篇
# Day 17| 增加敵人 HP 條
下一篇
# Day 19|敵人 AI (二)
系列文
30 天用 Unreal Engine 5 C++ 開發遊戲21
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言