2D栅格地图如何实现圆形/正方形单位的网格导航?

如题,在COCOS2.4里实现

当前需求方向:
1、地图是栅格动态随机地图,单位移动不是走到格子中点而是任意移动
2、动态更新地图三角网
3、基于三角网与圆/正方形单位参数,再生成一个三角网用于网格导航
4、支持多单位移动到一个目标点的任务,任务为这些单位分配一组相邻不相交的实际移动终点

更新时间:2024/4/25

2D栅格地图 用圆形做网格 给例子出来的

你是要整寻路?
如果你是走格子的游戏,那么直接a星就可以了。
如果只是设定了格子,但是走的时候不是走格子,而是要走一个最短距离,那么如图:
image
一般moba游戏或者其他之类的游戏里,都是用这种编辑好路径的方式实现的。
然后寻路的时候,先找到起点和终点附近最近的路径点,接着就是路径点之间的寻路了。算法和A星一样。

不是很明白

动态随机地图,不弄导航点

1.地图栅格就先走A*,拿到一条格子路径。
2. 如果不想按格子中心走,就对这个路径进行一下精简,合并能直线走的路径点。
例如 格1 -> 格2 -> 格3, 如果格1到格3可以直线走,那就精简掉格2。
3. 判断是不是可以直线走,可以写一个直线算法看看沿途格子有没有阻挡。

哦,看到你上面要弄三角网,就是2D导航网格,这个也可以,找个生成库把栅格的网格喂进去生成就行了,我记得叫Detour的,不知道ts上有没有类似的。