比“A星寻路”和“跳点寻路”更快的寻路算法《RCA寻路》介绍,对付大地图寻路的利器。

我给你的测试案例一共3个地图,各种复杂地形都有,你都跑一遍,看看路径结果偏不偏,有偏的告诉我,我会接受批评,前提是你先找到。如果这三个地图还不够,我提供的地图编辑器可以自由画各种复杂的地形,你都测一遍,如果寻路路径有问题请告知。

我早就说了你的地图大小上不了台,你那个地图大小限制死了知道吗,我就算遍历所有格子,对我或者对寻路而已都是0感知知道吗。

你在小鱼塘一直钓小鱼,你转到水坝,你可能连去哪来钓鱼都不知道

感觉确实和JPS+比较像。我也差不多看完了,你似乎并没有证明你的RCA比JPS+更快。JPS+本身也可以比A*快几百倍,JPS+也有预处理跳点的方案,这一部分在你的文章中并没有看到。

jps我也看过,之前想通过这个算法解决寻路效率低的问题,后面发现缺点太多就放弃了,自己研发一套寻路算法。我说的墙角不是jsp的拐角概念。

这个是测试案例,有寻路过程查看,你看看是不是JPS
Cocos Creator | RCA_Demo

你的观察点和JPS跳点的定义几乎是一样的……而且既然你放弃了JPS,哪来的自信写比JPS更快的,你都没和JPS测试比较过。

打个比方吧?如果在一个100 * 100格子的地图,地图没有任何障碍。起始点和终点在地图两端的斜对角。

如果是JPS寻路,那么为了查找拐点,会在终点的水平和垂直方向不断延申查找,因为没有障碍所以会直到遇到边界才停止。这种情况JPS可能会搜索5000个格子才找到目标。

我写的寻路算法是两点一线射线检测,中途没遇到障碍,检测的格子大概140个找到目标。

这个就是差距。

别发你的测试demo了,并不严谨。还有算法比谁更快就是比消耗时间,而不是什么步数

我都说了,你预处理了。JPS也有预处理版本,你总不能拿你预处理的版本和JPS原始版本比速度吧?你觉得公平吗?

demo 里你打开浏览器控制台,可以查看消耗时间。

你可以设置相同的起始点和终点测这个两个算法的寻路,并且去掉勾选查看寻路过程,这样就能在控制台看相同条件线不同寻路消耗的不同运算时间。

jps就算预处理,面对无障碍的空场景也没法预处理啊。而且空场景不存在墙角,我的算法也没发预处理。

所以差距还是这么大。

你去先看一下jps的概念,再看我上面发的贴子,看看是不是同一个东西?

这样吧,你也别管什么S什么A了,反正本质都是贪心。直接放大招吧,既然你觉得你的又快路线又好,我发个500 * 500的地图,按你说的0123二维数组,方便你生成地图。我们按照这个走相同点如何

来看看你所谓的步数到底能不能帮你

乖乖,杠了一天■■啊

:rofl: 乖乖,一觉醒来还没吵完,话说你们能不能先统一赛道来测试
同引擎,同语言,同机器,同地图(可随机100个地图)

你换种思路,如果连低效率语言都达不到标准,拿来商用不是灾难?

还要有同结果,不准撞墙 :joy:

找不到路肯定结果都不用测了,直接gg

而且我先前就说了,100 * 100的寻路地图小的可怜,这意味着原地图对于肉眼上的0感知只有25 * 25的大小,这个大小基本上达不到游戏地图放置要求

按正常思路,运行环境不一样,肯定也是不标准嘛。纯go性能跟cocos引擎+js+web一个天一个地