[发明专利]一种虚拟对象的寻路方法和装置在审
| 申请号: | 201910407818.8 | 申请日: | 2019-05-16 |
| 公开(公告)号: | CN109999498A | 公开(公告)日: | 2019-07-12 |
| 发明(设计)人: | 蔡康 | 申请(专利权)人: | 网易(杭州)网络有限公司 |
| 主分类号: | A63F13/56 | 分类号: | A63F13/56 |
| 代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 莎日娜 |
| 地址: | 310052 浙江省杭州*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 虚拟对象 寻路 目标点 障碍物 虚拟对象移动 起始点 方法和装置 寻路过程 直线距离 直线移动 预设 全局 | ||
本发明实施例提供了一种虚拟对象的寻路方法及装置,通过获取虚拟对象当前的起始点以及第一目标点,根据起始点以及第一目标点,判断沿虚拟对象移动方向的预设直线距离内,是否存在障碍物,当存在障碍物时,计算针对障碍物的第一中转点,虚拟对象移动至第一中转点,并从第一中转点直线移动至第一目标点,从而通过计算中转点,使得虚拟对象在寻路过程中,能够做到局部最短寻路,进而实现了全局路线最短,提高了寻路效率。
技术领域
本发明涉及游戏技术领域,特别是涉及一种虚拟对象的寻路方法和一种虚拟对象的寻路装置。
背景技术
自动寻路是网络游戏中一项智能功能。在无障碍物阻挡的情况下,从起始点到第一目标点,两点之间的线段最短。然而在实际中,各种形式的障碍物是十分常见的,由于障碍物的存在,游戏中的虚拟对象无法简单地直线前行,需要进行相应的避障处理。
常见的寻路方式包括迪杰斯特拉算法和A星搜索算法,其中,迪杰斯特拉算法是由荷兰计算机科学家狄克斯特拉于1959年提出的,因此又叫狄克斯特拉算法,它是计算从一个顶点到其余各顶点的最短路径算法,解决的是图中最短路径问题,迪杰斯特拉算法主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。A星搜索算法是比较流行的启发式搜索算法之一,被广泛应用于路径优化领域。它的独特之处是在检查最短路径中每个可能的节点时引入了全局信息,对当前节点到终点的距离做出估计,并作为评价该节点处于最短路线上的可能性的量度。
然而,上述两种方式虽然适用范围广,但是耗时长,计算效率低,且需要在虚拟对象进行移动之前做出完整的路径规划,若是在移动过程中,第一目标点出现变更,则需要重新做出完整的路径规划。此外,在部分极端场景中,上述方式中所得寻路结果往往是近似解,从而容易导致寻路结果在直观上显得不合理。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种虚拟对象的寻路方法和相应的一种虚拟对象的寻路装置。
为了解决上述问题,本发明实施例公开了一种虚拟对象的寻路方法,包括:
获取虚拟对象当前的起始点以及第一目标点;
根据所述起始点以及所述第一目标点,判断沿所述虚拟对象移动方向的预设直线距离内,是否存在障碍物;
当存在障碍物时,计算针对所述障碍物的第一中转点;
所述虚拟对象移动至所述第一中转点,并从所述第一中转点直线移动至所述第一目标点。
可选的,所述根据所述起始点以及所述第一目标点,判断沿所述虚拟对象移动方向的预设直线距离内,是否存在障碍物,包括:
判断所述起始点是否与所述第一目标点为相同位置点;
当所述起始点不为所述第一目标点,且所述虚拟对象未能从所述起始点直线移动至所述第一目标点时,获取针对所述第一目标点的第二中转点;
当所述虚拟对象从所述起始点直线移动至所述第二中转点后,判断所述预设直线距离内是否存在障碍物。
可选的,所述计算针对所述障碍物的第一中转点,包括:
采用搜索算法计算针对所述虚拟对象的各个阻碍点;
采用所述各个阻碍点,生成针对所述虚拟对象的第一阻挡区域以及针对所述第一目标点的第二阻挡区域;
判断所述第二阻挡区域是否包围所述第一目标点;
当所述第二阻挡区域未包围所述第一目标点时,根据所述第一阻挡区域计算所述第一中转点;
当所述第二阻挡区域包围所述第一目标点时,根据所述第一阻挡区域以及所述第二阻挡区域计算所述第一中转点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网易(杭州)网络有限公司,未经网易(杭州)网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910407818.8/2.html,转载请声明来源钻瓜专利网。





