我有我的球員在屏幕上,敵人產卵良好,並朝向任何最接近的球員。然而,如果我添加一面牆,並且牆位於玩家與敵人之間,那麼敵人將留在牆上,試圖穿過它。我怎麼能這樣做,讓敵人在牆壁前回旋呢?在牆壁上操縱敵人XNA
0
A
回答
1
有許多不同的算法可用於進行這種路徑查找。在C#中查看一個A *算法的this nice example。
0
你需要一些人工智能算法來幫助你的敵人操縱,這裏我不會詳細討論,但我會告訴你在哪裏看得更遠。假設你的玩家只能在地圖上的特定位置(如棋盤上的單元格),通過將地圖視爲具有節點和邊緣的圖形,然後嘗試找到2點之間的路徑,可以輕鬆解決該問題。
如果你懶得讀取算法並實現它們,一個非常簡單的方法就是讓敵人隨機「找到」它的路徑:如果它撞到了牆上,敵人會隨機選擇另一個方向繼續。它就像一個機器人,每次撞牆都會變成90度;它效率不高,但你會到達那裏。如果玩家可以在地圖中的任何地方移動(換句話說,他們的位置不侷限於單元格),您需要一些算法來考慮牆體的幾何形狀(有點像凸多邊形),並且找到每個對象周圍的最短路徑。
相關問題
- 1. XNA 4.0敵人產卵,反彈牆壁
- 2. Unity - 敵人AI穿過牆壁
- 3. 在XNA中創建牆壁
- 4. 敵人雪碧XNA
- 5. XNA - 圍繞牆壁轉向
- 6. XNA隨機重生「敵人」
- 7. 在Monogame/XNA中來回移動敵人
- 8. 敵人的節點偶爾會卡在牆上
- 9. AS3敵人在上一個敵人之上產生
- 10. XNA Gamestudio - NPC卡在牆壁和對方(Visual Basic)
- 11. 牆壁破壞
- 12. pygame - 牆壁跳
- 13. XNA框架:操縱屏幕亮度
- 14. XNA 3.1 - 不確定如何在敵人類中添加矩形
- 15. 如何在XNA中產生無限敵人?
- 16. XNA的敵人跟隨玩家,並在20像素內停止
- 17. Facebook喜歡牆壁
- 18. 角色hitTest牆壁
- 19. JavaScript事件流將我推上牆壁
- 20. 旋轉和XNA弧度,敵人的AI修正
- 21. XNA遊戲編程:孵化一個圈子中的敵人
- 22. 使用與FB API的Xcode張貼在人民牆壁
- 23. 添加敵人
- 24. 上下文操縱
- 25. 倖存者遊戲(穿牆,hitTest和手電的敵人)
- 26. ASP.NET發佈到Facebook牆壁
- 27. 的iOS - Facebook的SDK - 牆壁
- 28. SpriteKit通過牆壁拖放
- 29. 連接牆壁/飼料
- 30. sharekit - 發佈鏈接牆壁