作者phonehsu (EzEngine計畫)
看板GameDesign
標題Re: [請益] 關於大量怪物做最短路徑的方法
時間Fri Mar 26 21:32:06 2010
1.分時更新:
沒有每個frame搜一次的必要,每次更新數個,以60隻來算,每次算2隻,每秒30FPS,
只要2秒就更新一輪沒更新前就用照最後一次的路徑走下去就好了。一般來說,玩家不
會發現的。
2.跟隨法:
一隻找到路,週圍的跟著牠走就好了。實做就是走到那隻怪的位置,再照牠的路線走,
反正A*最後都會走成一條線,像SC一樣。
3.群組法:
這個是高級走法,和2很像只是改成以一隻為中心,組裡再個別去碰撞找位置站,這種
作法還會讓玩家有「怪物很聰明會一起上的錯覺」。基本上AOK和WC3都是這種走法,
反正你本來就有碰撞了,搜尋反而變少了。
4.倒轉搜尋:
你提到主角,如果主角是只有一個的話,不如反過來由主角的位置來找「所有的怪」,
就算是1K的怪最多只要把地圖掃一遍就把所有的路線全找到了。
「最短」路徑沒意義,如2所言,最短只有一條,會走成一條線,反而顯的笨,只是還是
比用撞的聰明就是了。其實怪走到定位(玩家之前的位置),再找下一條路都行…
A*有很多變種,可以提昇效率的,回文說的是一種作法,就是方向加權的做法,簡單說
就是先往玩家方向找,而不是向四周擴散,除非你的地圖的迷宮是設計來整人的(要回
頭繞幾圈的那種),不然一般來說會比較快。
-------編輯過-------
我不是P大,我是PP大…呃…算了
協調式移動連結(英文),請自行組合
http://www.gamasutra.com/view/feature/3314/
implementing_coordinated_movement.php
此文作者是aoe的主程式本人,1999寫的文啊…
我手邊有這篇的中文版,但是是實體書,
古老的雜誌「遊戲設計大師」第四期
--
遊戲就是要輕鬆玩 簡單做 大聲嘴砲
http://ezengine.blogspot.com/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.216.141.37
推 yan04870449:感謝P大的指點,我對群組法還蠻有興趣的,不知道有沒 03/26 21:47
→ yan04870449:有什麼關鍵字可供小弟搜尋,或是請前輩們大概指導一下 03/26 21:48
→ yan04870449:實作需要注意些什麼 03/26 21:48
※ 編輯: phonehsu 來自: 61.216.141.37 (03/26 22:15)
→ nobody1:推 03/26 22:17
推 linjack:獲益良多 <(_ _)> 03/26 22:25
推 yan04870449:感謝指導!! 03/26 22:38