[发明专利]一种支持游戏内大量单位同时寻路的方法在审
申请号: | 201910028931.5 | 申请日: | 2019-01-12 |
公开(公告)号: | CN109568959A | 公开(公告)日: | 2019-04-05 |
发明(设计)人: | 孙伟乐 | 申请(专利权)人: | 孙伟乐 |
主分类号: | A63F13/56 | 分类号: | A63F13/56 |
代理公司: | 北京鱼爪知识产权代理有限公司 11754 | 代理人: | 廖斌 |
地址: | 210000 江苏省南京市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 格子 寻路 抓取 目标点 地图管理模块 区域信息 节点图 地图数据 管理模块 加载模块 区域地图 所在区域 游戏地图 游戏 可复用 指向 | ||
本发明涉及游戏地图寻路,具体涉及一种支持游戏内大量单位同时寻路的方法,地图加载模块从地图数据中获取区域信息,并根据区域信息生成区域与区域之间的节点图t,地图管理模块抓取需要到达的目标点S和寻路单位,地图管理模块从节点图t中抓取目标点S所在区域P,并从中抓取目标点S所在的格子a,在寻路管理模块中寻找是否存在格子为格子a的可复用寻路区域地图,若存在,则跳到步骤S9,若不存在,则继续下一步,格子a周围的八个格子{fn}均指向格子a,并将格子a、{fn}均视为F状态;本发明提供的技术方案能够有效克服现有技术所存在的不能支持大量单位同时寻路的缺陷。
技术领域
本发明涉及游戏地图寻路,具体涉及一种支持游戏内大量单位同时寻路的方法。
背景技术
目前游戏寻路以A*算法为主导以及相关的优化算法,主要有着仿真度高,在小量数据下速度快的优点。其缺点就是在大量单位(百以上)同时寻路时,会占据大量运行时间,比如500ms,这往往意味着整个程序会因此卡顿0.5s,这在游戏中是无法容忍的,即使有相关算法的改进,也无法克服这个缺陷。
因此目前市面上的游戏(主要指rts),大多向战略战术方向发展,有着兵少的特点,而导致兵少的主要原因就是无法同时支持大量单位同时寻路。
发明内容
(一)解决的技术问题
针对现有技术所存在的上述缺点,本发明提供了一种支持游戏内大量单位同时寻路的方法,能够有效克服现有技术所存在的不能支持大量单位同时寻路的缺陷。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:
一种支持游戏内大量单位同时寻路的方法,包括以下步骤:
S1、地图加载模块从地图数据中获取区域信息,并根据区域信息生成区域与区域之间的节点图t;
S2、地图管理模块抓取需要到达的目标点S和寻路单位;
S3、地图管理模块从节点图t中抓取目标点S所在区域P,并从中抓取目标点S所在的格子a;
S4、在寻路管理模块中寻找是否存在格子为格子a的可复用寻路区域地图,若存在,则跳到步骤S9,若不存在,则继续下一步;
S5、格子a周围的八个格子{fn}均指向格子a,并将格子a、{fn}均视为F状态;
S6、取不处于F状态并与{fn}相连的格子{f’n},依次将格子{f’n}指向其对应的中心格子{fn},如果格子{f’n}中有被障碍物占据的,则视为F状态;
S7、将S6中的{f’n}视为{fn},并重复S6,直到{f’n}为空;
S8、将S4、S5、S6中产生的格子方向数据生成寻路区域地图U;
S9、地图管理模块抓取寻路单位所在区域{Pn},从节点图t中获取区域{Pn}与区域P的可通过节点{tn};
S10、寻路管理模块利用获取的区域信息生成关于区域{Pn}、节点{tn}的寻路区域地图{Un},寻路管理模块根据寻路区域地图U、寻路区域地图{Un}生成寻路地图R;
S11、将寻路地图R提交给寻路单位,寻路单位会将自己所在格子的方向作为行动方向,寻路工作完成。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于孙伟乐,未经孙伟乐许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910028931.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:团队战术指引方法、装置和存储介质
- 下一篇:游戏叙事模型难度调整方法及设备