由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 求问:游戏中比较自然的路径寻找算法有啥简单方案?
相关主题
一道C++面试题算法问题。
one question about algorithm怎么在wireless lan上面跟别的用户抢带宽?
shortest path algorithm(dijkstra)的变形[算法] word ladder problem (转载)
问问Boost library, 尤其是Boost Graph Library (BGL)请教一个算法题关于shortest path的
An interview question“Rise of the Orcs"App Store发布,欢迎体验!
google map 的问题怎么协议里面会有length?
[合集] huge map怎么算最短路径?赵老师你精确定义 100% 出票
ask help for several interview questions (转载)狗大师不玩围棋了 (转载)
相关话题的讨论汇总
话题: 变向话题: 路标话题: 道路话题: path话题: 路线
进入Programming版参与讨论
1 (共1页)
z***e
发帖数: 5393
1
做塔防游戏,但是因为设计的道路比较宽,又是多路径,相当于说是地图全开的RTS游
戏,寻路算法没找到个合适的方案,求指点。
嗯嗯,A* path finding这个我知道。
问题是,那是最短path,我不想一堆兵走两步最后就全部到一条线(shortest path)
上去了啊,看起来太假了。
在A*上修改,比如变向就增加权重什么的,貌似也没啥明显效果。实际上比较能接受的
效果是每一步的cost是一个范围内的随机数,然后士兵基本就不会都跑到一条线上去,
而是一边走一边左晃右晃。。。看起来还是不爽。。。
理想状况是比如一排兵出来,除非是遇到障碍物才变向,不然就是一直沿着初始方向往
前走,假设道路宽度始终不变。
解决方法目前想了两种,一种是设置路标waypoint,把路标设在转弯处,然后每次找下
一个路标,但是这个如果道路复杂了,设置起来很麻烦,因为坐标点要数,数起来麻烦
死了。
另一种是在地图上把行走道路固定死,反正就是几种路线,全部固定下来,士兵随机选
一条路线走就是了,这个思路简单,但是路线多了也麻烦。
any idea? thx.
p********8
发帖数: 2061
2
我觉得变向加权重有可能行
比如加大权重,早变向的权重比晚变向大之类的

【在 z***e 的大作中提到】
: 做塔防游戏,但是因为设计的道路比较宽,又是多路径,相当于说是地图全开的RTS游
: 戏,寻路算法没找到个合适的方案,求指点。
: 嗯嗯,A* path finding这个我知道。
: 问题是,那是最短path,我不想一堆兵走两步最后就全部到一条线(shortest path)
: 上去了啊,看起来太假了。
: 在A*上修改,比如变向就增加权重什么的,貌似也没啥明显效果。实际上比较能接受的
: 效果是每一步的cost是一个范围内的随机数,然后士兵基本就不会都跑到一条线上去,
: 而是一边走一边左晃右晃。。。看起来还是不爽。。。
: 理想状况是比如一排兵出来,除非是遇到障碍物才变向,不然就是一直沿着初始方向往
: 前走,假设道路宽度始终不变。

n***e
发帖数: 723
3
外行插一句:你能不能着把别的士兵占的位置也算成是障碍试试呢?另外我感觉塔防就
是一堆兵跑成一条直线啊。。。。

【在 z***e 的大作中提到】
: 做塔防游戏,但是因为设计的道路比较宽,又是多路径,相当于说是地图全开的RTS游
: 戏,寻路算法没找到个合适的方案,求指点。
: 嗯嗯,A* path finding这个我知道。
: 问题是,那是最短path,我不想一堆兵走两步最后就全部到一条线(shortest path)
: 上去了啊,看起来太假了。
: 在A*上修改,比如变向就增加权重什么的,貌似也没啥明显效果。实际上比较能接受的
: 效果是每一步的cost是一个范围内的随机数,然后士兵基本就不会都跑到一条线上去,
: 而是一边走一边左晃右晃。。。看起来还是不爽。。。
: 理想状况是比如一排兵出来,除非是遇到障碍物才变向,不然就是一直沿着初始方向往
: 前走,假设道路宽度始终不变。

1 (共1页)
进入Programming版参与讨论
相关主题
狗大师不玩围棋了 (转载)An interview question
面试题求解 (转载)google map 的问题
core dump 后的尸体能debug吗?[合集] huge map怎么算最短路径?
随机数发生器问题请教ask help for several interview questions (转载)
一道C++面试题算法问题。
one question about algorithm怎么在wireless lan上面跟别的用户抢带宽?
shortest path algorithm(dijkstra)的变形[算法] word ladder problem (转载)
问问Boost library, 尤其是Boost Graph Library (BGL)请教一个算法题关于shortest path的
相关话题的讨论汇总
话题: 变向话题: 路标话题: 道路话题: path话题: 路线