作者TonyQ (骨头)
看板java
标题Re: [问题] 小精灵游戏里, 如何决定Ghost的路径
时间Sat Oct 13 15:21:47 2007
※ 引述《linjack (嗯)》之铭言:
: ※ 引述《taroson (想想)》之铭言:
: [删去部份]
: 我是觉得这题应该还用不到 A* 那个 level
: 有在写 PacMan,那老鼠走迷宫应该写过了吧
: 这两者的路径搜寻应该是一样的东西
: 只是老鼠走迷宫里,老鼠要走的出口不会动,只有老鼠会动
: 所以 BFS 扫一次就走完最短了
: 现在是老鼠(Ghost)会动,出口(PacMan)也会动
: 那就是 PacMan 的位置只要动了,Ghost 在走下一步之前
: (下一个 Frame 或下一个 Step ... anyway 看你程式怎麽写的)
: 就必需重新做一次 BFS 建立新的最短路径
: well, Breadth-First-Search 应该是找 Shortest path
: 的简单办法之一吧 XD 如果我记得没错的话 .......(汗)
会动的状况下
A*不失为是用来解决的最佳解 , BFS cost很高 ,
前面我有发过相关心得 , 可以找找看 ...:P
虽然我後来发现我之前的code有点问题 ,
open list没有维护好 ..XD
在下面的code我修正了 :P
--
有兴趣的话可以参考我最近改写的 A* for 老鼠迷宫
http://std1.mis.yzu.edu.tw/~s932541/java/AStar.rar
里面有包含node(点) BinaryHeap(heap 资结实做) 跟 CFindPath
开CFindPath里面的main有简单的sample跟测资
--
▄▅▆▇███▇▆▅▄▃ ╰┼╯─╮ ╮
◥███████████◣ ╰┼╯=│=│
◥██████───────◣ *. ╯ ╯ ╯ の 物 语 .*
◥███████──────◣ ~ ◢◣ ◢◣
◥██████───────◤ ◥◤* 空白的世界.翼
*◥◤
◥██▁▂▃▄▅▆▇███▆▅▄▃▂▂
~telnet://tony1223.no-ip.info
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.132.59.247
1F:推 linjack:我纯粹只是觉得 BFS 比 A* 好写 ....... XD 10/13 15:57
2F:→ linjack:(因为其实我没写过 A*,赶快逃跑XD) 10/13 15:58
3F:推 TonyQ:以前在找A*的资料的时候看到 BFS vs A* XD 10/13 17:25
4F:→ TonyQ:我觉得BFS比较适合不确定目标位置的时候(ex.工人采矿) 10/13 17:25
5F:推 qrtt1:mining 通常不是即时的用途 10/13 22:11