Cocos2d-HTML5A*路径寻路算法
COCOS2D 的 HTML5 版本里整合 A*算法,真的挺实用的。游戏开发里,角色寻路可是基本操作,自己写路径搜索又麻烦,这时候直接套用个成熟的 A*实现,省事多了。JS_astar2
这个文件就像一套现成的模板,逻辑清晰、结构也不复杂,适合直接改造上手。是你用cocos2d-html5
做地图游戏、塔防或者 RPG,路径怎么走、怎么避障,用它都比较顺。
地图用二维数组来表示,通不通行都能标清楚。A*算法本身也不复杂,核心就是那个f(n) = g(n) + h(n)
,算的是从起点到终点的估值。g(n)
可以理解为已经走过的路,h(n)
就是猜测还有多远。启发式函数用曼哈顿距离
就挺常见,简单高效,游戏里表现也不错。
实现的时候注意几点:开放列表要用优先队列优化,不然大地图一跑就卡;还有障碍更新、动态重算路径这些需求,建议封装函数,别堆一块代码乱成一团。
如果你对 A*还不太熟,可以先看看JavaScript 实现 A*寻路算法及演示这篇文章,讲得还蛮直观;想了解下 cocos2d-x 版本,也可以戳Cocos2d-x 实现的 A*寻路。
,COCOS2D 配合 A*,就是那种“写得好像没做啥,功能却完整”的组合。你要做寻路系统,这份资源不拿来用实在太可惜了。
JS_astar2.zip
预估大小:10个文件
JS_astar2
文件夹
player2A.png
222KB
自动寻路算法(JS版).html
6KB
cnGame_v1.2.js
39KB
aStar.js
7KB
desertA.png
2KB
phoA.png
3KB
grassA.png
5KB
aStarRun.htm
7KB
stoneA.png
4KB
255.03KB
文件大小:
评论区