[发明专利]一种寻路验证方法及装置有效
申请号: | 201110136925.5 | 申请日: | 2011-05-25 |
公开(公告)号: | CN102800242A | 公开(公告)日: | 2012-11-28 |
发明(设计)人: | 张伟 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G09B29/00 | 分类号: | G09B29/00 |
代理公司: | 北京派特恩知识产权代理事务所(普通合伙) 11270 | 代理人: | 张颖玲;蒋雅洁 |
地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 验证 方法 装置 | ||
技术领域
本发明涉及寻路技术,尤指一种寻路验证方法及装置。
背景技术
在游戏中,寻路算法通常采取一种简化的方法,将地图按一定的间隔进行横纵切割,划分为多个格子(Tile),每个格子有两种状态:可行走和不可行走。图1为现有游戏中实现寻路的路径示意图,如图1所示,斜线阴影格子的区域是不可行走的区域,白色格子的区域是可行走的区域。寻路算法(如A*算法)通过一定的计算方式,得到从点A到点B的一条路径,如图中虚线所示的折线;然后对这条折线进行优化,判断出C点是多余的,进而简化为A直接到B的实线路径。其中,A*(读作A Star)算法是一种常用于在游戏中,计算地图上的一个点到达另外一个点的行走路径的寻路(PathFinding)算法。
寻路完成后,客户端将计算出的包含两个点A、B的直线路径发送给服务器,服务器需要验证通过寻路得到的路径能否从A点直接到达B点,传统验证的技术方式是“直线逼近法”验证,即取AB直线上的多个中间点,通过判断中间点是否可行走,进而得出整条直线是否可行走。图2为现有实现验证路径的示意图,如图2所示,在AB直线路径上取C、D两个中间点,比如在AB直连线上,每隔一定距离选取采样点,通常距离为1个格子(Tile)的尺寸。通过判断C、D两点是否可行走,即判断C、D两点是否处于可行走的格子(Tile)中.因为C、D是相邻的格子,所以可以表示C、D之间的任何点都是可行走的,从而得出AB整条路线是否可行走。
现有验证路径的算法中,因为C、D的选取过程是根据直线方程来计算出C、D的具体位置,其中涉及了浮点运算、乘除法运算,因此,计算C,D两点的方法比较耗时,直线方程计算涉及大量的乘除法以及浮点运算,对于服务器而言降低了系统性能,而估算法会使得验证结果不准确;而且,随着A,B两点距离的增加,需要验证的中间点数量也随之增多,尤其是在地图较大时,这种长距离的寻路验证严重损害了服务器的负载能力。
发明内容
有鉴于此,本发明的主要目的在于提供一种寻路验证方法及装置,能够大大减少服务器在做路径验证时的时间消耗,而且验证结果准确可靠。
为达到上述目的,本发明的技术方案是这样实现的:
一种寻路验证方法,包括:通过扫描及融合获取可行走区域,其中,采用逐层迭代方法实现数据的融合为;在逐级迭代中,记录每个格子所属的区域,以及该区域的起始格子、该区域的大小信息,直至扫描到没有更大的区域存在为止;
判断出待验证的路径包含在可行走区域中,验证该路径直接可达。
所述逐层迭代包括:
每次扫描中,查看一个指定尺寸的正方形内的所有格子是否均可行走,如果是,则表示该正方形区域是一个大的可行走区域;所述每个区域记录的信息包括:当前正方形的尺寸;正方形的起始格子序号;
每次扫描后,得到地图上所有的可行走的指定尺寸的正方形区域;
在按照从小尺寸到大尺寸的顺序,对地图进行多次扫描后,逐渐形成一系列可行走的正方形区域,并且,包含在大尺寸正方形中的小正方形被融合掉。
所述验证该路径直接可达包括:判断出所述待验证的路径的两个端点均处于相同的区域。
该方法还包括:如果判断出所述待验证的路径的两个端点不同处于相同的区域,进一步通过采样路径验证确定路径AB是否直接可达。
一种寻路验证装置,至少包括融合单元,处理单元,其中,
融合单元,用于通过扫描及融合获取可行走区域,并将可行走区域信息传递给处理单元;,其中,采用逐层迭代方法实现数据的融合为;在逐级迭代中,记录每个格子所属的区域,以及该区域的起始格子、该区域的大小信息,直至扫描到没有更大的区域存在为止;
处理单元,用于根据接收到的可行走区域信息以及来自客户端的待验证路径信息,在判断待验证的路径包含在可行走区域中,并发出验证该路径是否直接可达的验证结果。
从上述本发明提供的技术方案可以看出,包括通过融合获取可行走区域,在判断出需要验证的路径包含在可行走区域中,验证该路径直接可达。本发明方法通过找出大的可行走区域,并判断出待验证的路径的两点同处于该可行走区域中,服务器立刻返回该待验证的路径直接可达的路径验证结果。从本发明方法可见,不再需要验证中间的路径点,这样,大大减少了服务器在做路径验证时的时间消耗,而且验证结果准确可靠。
附图说明
图1为现有游戏中实现寻路的路径示意图;
图2为现有实现验证路径的示意图;
图3为本发明实现验证路径的示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110136925.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:镀锡薄板的电脱生产线控制系统
- 下一篇:管材收集装置及包括其的灯管制造装置