寻路方法和装置制造方法及图纸

技术编号:18244170 阅读:35 留言:0更新日期:2018-06-20 01:00
本发明专利技术实施例提供一种寻路方法和装置,该方法包括检测玩家当前位置信息作为第一位置点,以及检测目标位置信息作为第二位置点;判断所述第一位置点与所述第二位置点之间是否存在障碍物;若存在障碍物,则基于所述障碍物与所述第一位置点和第二位置点之间的相对位置关系寻找从所述第一位置点到所述第二位置点的中转点;基于所述第一位置点、中转点和第二位置点生成飞行路线以控制玩家从当前位置经所述中转点飞向所述目标位置。本发明专利技术实施例能够使得飞行线路更加圆滑,改善用户游戏体验。

Path finding method and device

An embodiment of the invention provides a path finding method and device, which includes detecting the current position information of a player as a first position point and detecting the location information of the target as a second position point; determine whether there is an obstacle between the first position point and the second position point, and if there is an obstacle, the obstacle is based on the barrier. A relative position relationship between the first position point and the second position point is found to find the transfer point from the first position point to the second position point; the flight route is generated based on the first position point, the rotation point and the second position point to control the player to fly from the current position to the target position. The embodiment of the invention can make the flight line more smooth and improve the user's gaming experience.

【技术实现步骤摘要】
寻路方法和装置
本专利技术涉及游戏开发
,具体而言,涉及一种寻路方法和装置。
技术介绍
在现有的游戏过程中,玩家从当前位置飞向目的地时表现生硬,使得游戏不够逼真,尤其是在当前位置与目的地之间存在障碍物时。但若像在地面寻路一样使用网格系统进行飞行寻路来提高游戏的逼真度,则会大幅提高内存消耗,影响游戏性能,如游戏卡顿等。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提供一种寻路方法和装置,能够有效改善上述问题。本专利技术较佳实施例提供了一种寻路方法,所述方法包括:检测玩家当前位置信息作为第一位置点,以及检测目标位置信息作为第二位置点;判断所述第一位置点与所述第二位置点之间是否存在障碍物;若存在障碍物,则基于所述障碍物与所述第一位置点和第二位置点之间的相对位置关系寻找从所述第一位置点到所述第二位置点的中转点;基于所述第一位置点、中转点和第二位置点生成飞行路线以控制玩家从当前位置经所述中转点飞向所述目标位置。进一步地,基于所述障碍物与所述第一位置点和第二位置点之间的相对位置关系寻找从所述第一位置点到所述第二位置点的中转点的步骤包括:以所述第一位置点为原点、预设距离为半径检测在该原点的预设方向是否存在与所述第二位置点之间没有障碍物的位置点,若存在,则将该位置点作为中转点。进一步地,在该原点的预设方向不存在与所述第二位置点之间没有障碍物的位置点时,所述方法还包括:增大所述预设距离,并继续以所述第一位置点为原点、以增大后的预设距离为半径,执行检测在该原点的预设方向是否存在与所述第二位置点之间没有障碍物的位置点的步骤。进一步地,基于所述障碍物与所述第一位置点和第二位置点之间的相对位置关系寻找从所述第一位置点到所述第二位置点的中转点的步骤包括:以所述第一位置点为起点,基于多次碰撞法朝向所述障碍物的方向选取满足预设条件的位置点作为中转点,其中,所述预设条件为玩家延所述第一位置点和所述位置点的连线方向运动时不会与所述障碍物发生碰撞。进一步地,基于多次碰撞法朝向所述障碍物的方向选取满足预设条件的位置点作为中转点的步骤包括:以所述第一位置点和第二位置点的连线为基准线,以所述基准线与所述障碍物靠近所述第一位置点的交点作为基准碰撞点;基于所述基准碰撞点,延所述障碍物的预设碰撞方向依次检测是否存在满足预设条件的位置点,若存在,则将该位置点作为中转点。进一步地,基于多次碰撞法朝向所述障碍物的方向选取满足预设条件的位置点作为中转点的步骤包括:检测在所述第一位置点朝向所述障碍物的预设范围内是否存在满足预设条件的位置点;若不存在,则控制玩家按照预设距离进行位移以到达新的第一位置点,并继续执行检测在所述第一位置点朝向所述障碍物的预设范围内是否存在满足预设条件的位置点的步骤,直到玩家当前所在的第一位置点朝向所述障碍物的预设范围内存在满足预设条件的位置点时,将该位置点作为中转点。进一步地,在检测在第一位置点朝向所述障碍物的预设范围内是否存在所述障碍物的步骤之前,所述方法还包括:根据所述第一位置点与所述障碍物的位置关系确定上述玩家按照预设距离进行位移的位移方向。本专利技术实施例还提供一种寻路装置,所述装置包括:位置检测模块,用于检测玩家当前位置信息作为第一位置点,以及检测目标位置信息作为第二位置点;判断模块,用于判断所述第一位置点与所述第二位置点之间是否存在障碍物;中转点确定模块,用于若存在障碍物,则基于所述障碍物与所述第一位置点和第二位置点之间的相对位置关系寻找从所述第一位置点到所述第二位置点的中转点;路线生成模块,用于基于所述第一位置点、中转点和第二位置点生成飞行路线以控制玩家从当前位置经所述中转点飞向所述目标位置。进一步地,所述中转点确定模块包括:检测单元,用于以所述第一位置点为原点、预设距离为半径检测在该原点的预设方向是否存在与所述第二位置点之间没有障碍物的位置点;中转点确定单元,用于在存在与所述第二位置点之间没有障碍物的位置点时,将该位置点作为中转点。进一步地,所述检测单元还用于在所述原点的预设方向不存在与所述第二位置点之间有障碍物的位置点时,增大所述预设距离,并继续以所述第一位置点为原点、以增大后的预设距离为半径,执行检测在该原点的预设方向是否存在与所述第二位置点之间不存在障碍物的位置点的步骤。与现有技术相比,本专利技术实施例提供的寻路方法和装置,基于玩家当前位置、障碍物位置以及目标位置三者之间的位置关系寻找最优中转点实现飞行寻路,以使得玩家从当前位置到目标位置的飞行线路更加圆滑,游戏效果更加逼真。同时,本方法复杂度低,实现简单,不会消耗或占用过多的内存。此外,通过本专利技术实施例提供的寻路方法还能使得玩家合理躲避障碍物,提高游戏过程中的智能化,改善用户游戏体验。为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为应用本专利技术实施例提供的寻路装置的电子设备的方框结构示意图。图2为本专利技术实施例提供的寻路方法的流程示意图。图3为图2中所示的步骤S130的子流程示意图。图4为本专利技术实施例提供的中转点寻找取点过程示意图。图5为应用图3中所示的寻路方法的飞行效果示意图。图6为图2中所示的步骤S130的另一子流程示意图。图7为本专利技术实施例提供的中转点寻找取点过程的另一示意图。图8为应用图6中所示的寻路方法的飞行效果示意图。图9为图2中所示的步骤S130的又一子流程示意图。图10为本专利技术实施例提供的中转点寻找取点过程的又一示意图。图11为应用图9中所示的寻路方法的飞行效果示意图。图12为本专利技术实施例提供的寻路装置的方框结构示意图。图标:10-电子设备;100-寻路装置;110-位置检测模块;120-判断模块;130-中转点确定模块;131-检测单元;132-中转点确定单元;140-路线生成模块;200-存储器;300-存储控制器;400-处理器。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本专利技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本专利技术的实施例的详细描述并非旨在限制要求保护的本专利技术的范围,而是仅仅表示本专利技术的选定实施例。基于本专利技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。如图1所示,是应用本专利技术较佳实施例提供的所述寻路方法和装置的电子设备10的方框结构示意图,该电子设备10包括寻路装置100、存储器200、存储控制器300以及处理器400。其中,所述存储器200、存储控制器300和处理器400各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件之间通过一条或本文档来自技高网...
寻路方法和装置

【技术保护点】
1.一种寻路方法,其特征在于,所述方法包括:检测玩家当前位置信息作为第一位置点,以及检测目标位置信息作为第二位置点;判断所述第一位置点与所述第二位置点之间是否存在障碍物;若存在障碍物,则基于所述障碍物与所述第一位置点和第二位置点之间的相对位置关系寻找从所述第一位置点到所述第二位置点的中转点;基于所述第一位置点、中转点和第二位置点生成飞行路线以控制玩家从当前位置经所述中转点飞向所述目标位置。

【技术特征摘要】
1.一种寻路方法,其特征在于,所述方法包括:检测玩家当前位置信息作为第一位置点,以及检测目标位置信息作为第二位置点;判断所述第一位置点与所述第二位置点之间是否存在障碍物;若存在障碍物,则基于所述障碍物与所述第一位置点和第二位置点之间的相对位置关系寻找从所述第一位置点到所述第二位置点的中转点;基于所述第一位置点、中转点和第二位置点生成飞行路线以控制玩家从当前位置经所述中转点飞向所述目标位置。2.根据权利要求1所述的寻路方法,其特征在于,基于所述障碍物与所述第一位置点和第二位置点之间的相对位置关系寻找从所述第一位置点到所述第二位置点的中转点的步骤包括:以所述第一位置点为原点、预设距离为半径检测在该原点的预设方向是否存在与所述第二位置点之间没有障碍物的位置点,若存在,则将该位置点作为中转点。3.根据权利要求2所述的寻路方法,其特征在于,在该原点的预设方向不存在与所述第二位置点之间没有障碍物的位置点时,所述方法还包括:增大所述预设距离,并继续以所述第一位置点为原点、以增大后的预设距离为半径,执行检测在该原点的预设方向是否存在与所述第二位置点之间没有障碍物的位置点的步骤。4.根据权利要求1所述的寻路方法,其特征在于,基于所述障碍物与所述第一位置点和第二位置点之间的相对位置关系寻找从所述第一位置点到所述第二位置点的中转点的步骤包括:以所述第一位置点为起点,基于多次碰撞法朝向所述障碍物的方向选取满足预设条件的位置点作为中转点,其中,所述预设条件为玩家延所述第一位置点和所述位置点的连线方向运动时不会与所述障碍物发生碰撞。5.根据权利要求4所述的寻路方法,其特征在于,基于多次碰撞法朝向所述障碍物的方向选取满足预设条件的位置点作为中转点的步骤包括:以所述第一位置点和第二位置点的连线为基准线,以所述基准线与所述障碍物靠近所述第一位置点的交点作为基准碰撞点;基于所述基准碰撞点,延所述障碍物的预设碰撞方向依次检测是否存在满足预设条件的位置点,若存在,则将该位置点作为中转点。6.根据权利要求4...

【专利技术属性】
技术研发人员:赵墨强
申请(专利权)人:北京像素软件科技股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1