CN113730915B - 目标路径的确定方法、装置和存储介质及电子设备 - Google Patents

目标路径的确定方法、装置和存储介质及电子设备 Download PDF

Info

Publication number
CN113730915B
CN113730915B CN202111088399.XA CN202111088399A CN113730915B CN 113730915 B CN113730915 B CN 113730915B CN 202111088399 A CN202111088399 A CN 202111088399A CN 113730915 B CN113730915 B CN 113730915B
Authority
CN
China
Prior art keywords
target
grid
path
grids
heuristic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111088399.XA
Other languages
English (en)
Other versions
CN113730915A (zh
Inventor
曹家华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202111088399.XA priority Critical patent/CN113730915B/zh
Publication of CN113730915A publication Critical patent/CN113730915A/zh
Application granted granted Critical
Publication of CN113730915B publication Critical patent/CN113730915B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/537Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen
    • A63F13/5372Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game using indicators, e.g. showing the condition of a game character on screen for tagging characters, objects or locations in the game scene, e.g. displaying a circle under the character controlled by the player
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Navigation (AREA)

Abstract

本发明公开了一种目标路径的确定方法、装置和存储介质及电子设备。其中,该方法包括:响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格;获取起点网格关联的起点启发信息;获取终点网格关联的终点启发信息;根据起点启发信息与终点启发信息获取目标操作信息;按照目标操作信息在目标网格集合中执行目标寻路操作,得到寻路结果路径。本发明解决了目标路径的确定效率较低的技术问题。

Description

目标路径的确定方法、装置和存储介质及电子设备
技术领域
本发明涉及计算机领域,具体而言,涉及一种目标路径的确定方法、装置和存储介质及电子设备。
背景技术
为提高用户体验,游戏应用往往会为玩家配置复杂的游戏地图,但复杂度较高的游戏地图也会对游戏进程中的自动寻路(即确定目标路径)造成困难。例如相关技术中的寻路算法会因地形复杂而导致算法耗时过高或有限步数内可寻路距离过近等问题的出现,从而影响自动寻路功能的高效实现,进而降低目标路径的确定效率。因此,相关技术中存在目标路径的确定效率较低的问题。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种目标路径的确定方法、装置和存储介质及电子设备,以至少解决目标路径的确定效率较低的技术问题。
根据本发明实施例的一个方面,提供了一种目标路径的确定方法,包括:响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格,其中,上述目标寻路请求用于请求获取从上述起点网格至上述终点网格的目标路径,上述目标网格集合包括目标游戏地图中的一组网格;获取上述起点网格关联的起点启发信息,其中,上述起点启发信息为上述目标网格集合中允许为上述起点网格提供寻路启发的参考网格的信息,上述参考网格为上述目标游戏地图中禁止通行的网格;获取上述终点网格关联的终点启发信息,其中,上述终点启发信息为上述目标网格集合中允许为上述终点网格提供寻路启发的参考网格的信息;根据上述起点启发信息与上述终点启发信息获取目标操作信息,其中,上述目标操作信息为目标寻路操作的执行指示信息;按照上述目标操作信息在上述目标网格集合中执行上述目标寻路操作,得到寻路结果路径,其中,上述目标路径包括上述寻路结果路径。
根据本发明实施例的另一方面,还提供了一种目标路径的确定装置,包括:第一获取单元,用于响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格,其中,上述目标寻路请求用于请求获取从上述起点网格至上述终点网格的目标路径,上述目标网格集合包括目标游戏地图中的一组网格;第二获取单元,用于获取上述起点网格关联的起点启发信息,其中,上述起点启发信息为上述目标网格集合中允许为上述起点网格提供寻路启发的参考网格的信息,上述参考网格为上述目标游戏地图中禁止通行的网格;第三获取单元,用于获取上述终点网格关联的终点启发信息,其中,上述终点启发信息为上述目标网格集合中允许为上述终点网格提供寻路启发的参考网格的信息;第四获取单元,用于根据上述起点启发信息与上述终点启发信息获取目标操作信息,其中,上述目标操作信息为目标寻路操作的执行指示信息;执行单元,用于按照上述目标操作信息在上述目标网格集合中执行上述目标寻路操作,得到寻路结果路径,其中,上述目标路径包括上述寻路结果路径。
作为一种可选的方案,上述第二获取单元,包括:第一获取模块,用于获取上述目标游戏地图中、位于上述起点网格的第一预设范围内的第一目标参考网格;第二获取模块,用于获取每个上述第一目标参考网格与上述起点网格之间的第一距离;第一确定模块,用于根据上述第一距离确定每个上述第一目标参考网格相对于上述起点网格的第一启发值,其中,上述第一距离与上述第一启发值呈反向相关关系;第一整合模块,用于整合每个上述第一启发值,得到上述起点启发信息。
作为一种可选的方案,上述第三获取单元,包括:第三获取模块,用于获取上述目标游戏地图中、位于上述终点网格的第二预设范围内的第二目标参考网格;第四获取模块,用于获取每个上述第二目标参考网格与上述终点网格之间的第二距离;第二确定模块,用于根据上述第二距离确定每个上述第二目标参考网格相对于上述终点网格的第二启发值,其中,上述第二距离与上述第二启发值呈反向相关关系;第二整合模块,用于整合每个上述第二启发值,得到上述终点启发信息。
作为一种可选的方案,上述第四获取单元,包括:第五获取模块,用于在上述起点启发信息对应的启发值达到第一阈值的情况下,获取第一操作信息,其中,上述目标操作信息包括上述第一操作信息,上述第一操作信息用于指示从上述起点网格开始执行上述目标寻路操作;或,第六获取模块,用于在上述终点启发信息对应的启发值达到第二阈值的情况下,获取第二操作信息,其中,上述目标操作信息包括上述第二操作信息,上述第二操作信息用于指示从上述终点网格开始执行上述目标寻路操作。
作为一种可选的方案,上述第四获取单元,包括:第七获取模块,用于在上述起点启发信息对应的启发值达到第三阈值、且上述终点启发信息对应的启发值达到第四阈值的情况下,获取第三操作信息,其中,上述目标操作信息包括上述第三操作信息,上述第三操作信息用于指示分别从上述起点网格以及上述终点网格开始执行上述目标寻路操作。
作为一种可选的方案,上述执行单元包括:第五获取单元,用于在上述获取第三操作信息之后,获取从上述起点网格开始执行上述目标寻路操作过程中的多个第一网格;第一确定单元,用于在上述获取第三操作信息之后,根据上述多个第一网格中的每个第一网格对应的目标消耗值,在上述多个第一网格中确定出N个第一目标网格,其中,上述目标消耗值用于表示通行网格时所消耗的虚拟值,上述N个第一目标网格用于构成第一寻路结果路径,N为自然数;第六获取单元,用于在上述获取第三操作信息之后,获取从上述终点网格开始执行上述目标寻路操作过程中的多个第二网格;第二确定单元,用于在上述获取第三操作信息之后,根据上述多个第二网格中的每个第二网格对应的目标消耗值,在上述多个第一网格中确定出M个第二目标网格,其中,上述M个第二目标网格用于构成第二寻路结果路径,M为自然数;生成单元,用于在上述获取第三操作信息之后,在上述多个第一网格中的第一网格,与上述多个第二网格中的第二网格出现重复的情况下,根据上述第一寻路结果路径以及上述第二寻路结果路径生成上述寻路结果路径。
作为一种可选的方案,包括:第三确定单元,用于在上述根据上述第一寻路结果路径以及上述第二寻路结果路径生成上述寻路结果路径之前,在从上述起点网格开始执行上述目标寻路操作过程中,利用第一标识对获取到的网格进行标记,得到上述多个第一网格;第四确定单元,用于在上述根据上述第一寻路结果路径以及上述第二寻路结果路径生成上述寻路结果路径之前,在从上述终点网格开始执行上述目标寻路操作过程中,利用第二标识对获取到的网格进行标记,得到上述多个第二网格;第五确定单元,用于在上述根据上述第一寻路结果路径以及上述第二寻路结果路径生成上述寻路结果路径之前,在从上述起点网格开始执行上述目标寻路操作、以及从上述终点网格开始执行上述目标寻路操作过程中,利用第三标识对在上述多个第一网格中确定出的N个网格、以及在上述多个第二网格中确定出的M个网格进行标记,得到(M+N)个目标网格,其中,上述(M+N)个目标网格包括上述N个第一目标网格以及上述M个第二目标网格。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述目标路径的确定方法。
根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的目标路径的确定方法。
在本发明实施例中,通过获取目标游戏地图对应的目标网格集合中的起点网格和终点网格,并明确上述起点网格关联的起点启发信息以及上述终点网格关联的终点启发信息的方式,为用于确定目标路径的目标寻路操作配置最高效的目标操作信息,进而达到了提高目标寻路操作的执行效率的目的,从而实现了提高目标路径的确定效率的技术效果,进而解决了目标路径的确定效率较低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的目标路径的确定方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的目标路径的确定方法的流程的示意图;
图3是根据本发明实施例的一种可选的目标路径的确定方法的示意图;
图4是根据本发明实施例的另一种可选的目标路径的确定方法的示意图;
图5是根据本发明实施例的另一种可选的目标路径的确定方法的示意图;
图6是根据本发明实施例的另一种可选的目标路径的确定方法的示意图;
图7是根据本发明实施例的另一种可选的目标路径的确定方法的示意图;
图8是根据本发明实施例的另一种可选的目标路径的确定方法的示意图;
图9是根据本发明实施例的一种可选的目标路径的确定装置的示意图;
图10是根据本发明实施例的一种可选的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例的一个方面,提供了一种目标路径的确定方法,可选地,作为一种可选的实施方式,上述目标路径的确定方法可以但不限于应用于如图1所示的环境中。其中,可以但不限于包括用户设备102、网络110及服务器112,其中,该用户设备102上可以但不限于包括显示器108、处理器106及存储器104。
具体过程可如下步骤:
步骤S102,用户设备102获取目标寻路请求,其中,该目标寻路请求用于请求显示从目标游戏地图1022上的起始位置到终点位置之间的目标路径;
步骤S104-S106,用户设备102通过网络110将目标寻路请求发送给服务器112;
步骤S108,服务器112通过数据库114查找目标游戏地图1022对应的目标网格集合,以及在该目标网格集合中与起始位置、终点位置分别对应的起点网格和终点网格,并通过处理引擎116将起点网格和终点网格分别关联的启发信息进行处理,从而生成目标路径;
步骤S110-S114,服务器112通过网络110将目标路径发送给用户设备102,用户设备102中的处理器106将目标路径显示在显示器108中,并将目标路径存储在存储器104中。除图1示出的示例之外,上述步骤可以由用户设备102独立完成,即由用户设备102执行目标路径的生成等步骤,从而减轻服务器的处理压力。该用户设备102包括但不限于手持设备(如手机)、笔记本电脑、台式电脑、车载设备等,本发明并不限制用户设备102的具体实现方式。
可选地,作为一种可选的实施方式,如图2所示,目标路径的确定方法包括:
S202,响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格,其中,目标寻路请求用于请求获取从起点网格至终点网格的目标路径,目标网格集合包括目标游戏地图中的一组网格;
S204,获取起点网格关联的起点启发信息,其中,起点启发信息为目标网格集合中允许为起点网格提供寻路启发的参考网格的信息,参考网格为目标游戏地图中禁止通行的网格;
S206,获取终点网格关联的终点启发信息,其中,终点启发信息为目标网格集合中允许为终点网格提供寻路启发的参考网格的信息;
S208,根据起点启发信息与终点启发信息获取目标操作信息,其中,目标操作信息为目标寻路操作的执行指示信息;
S210,按照目标操作信息在目标网格集合中执行目标寻路操作,得到寻路结果路径,其中,目标路径包括寻路结果路径。
可选地,在本实施例中,上述目标路径的确定方法可以但不限于应用在目标游戏应用,例如目标游戏应用可以但不限于由目标账号登录运行在游戏客户端中的目标射击应用,由目标账号控制虚拟操作对象。也就是说,玩家通过账号登录运行在游戏客户端中的目标游戏应用,并控制虚拟操作对象;可选地,目标游戏应用配置有目标游戏地图,被控制的虚拟操作对象在该目标游戏地图上进行移动,假设虚拟操作对象被控制从目标游戏地图中的位置A移动至位置B,则可以但不限于利用上述目标路径的确定方法确定位置A至位置B的目标路径。
进一步举例说明,例如图3所示,目标游戏地图302中位置A对应目标网格集合304中的起点网格、目标游戏地图302中位置B对应目标网格集合304中的终点网格,其中,目标网格集合304中的每个网格对应目标游戏地图302中的每个位置;假设获取到用于控制操作对象306从位置A移动至位置B的移动请求,如图3中的(a)所示;进一步响应该移动请求,获取目标网格集合304中的起点网格和终点网格分别关联的启发信息,并基于该启发信息生成目标路径(实线箭头),如图3中的(b)所示,还可以但不限于将目标路径显示在目标游戏地图302上。
可选地,在本实施例中,目标游戏地图可以但不限理解为由多个网格组成的网格网络,在获取到目标寻路请求的情况下,获取目标寻路请求所请求目标游戏地图上的起点位置以及终点位置;进一步获取起点位置在目标网格集合中对应的起点网格、终点位置包括目标网格集合中对应的终点网格。
可选地,在本实施例中,目标游戏地图上可以但不限于配置有允许通行的网格以及禁止通行的网格,其中,目标路径中包括多个允许通行的网格,且目标路径中不包括禁止通行的网格。
可选地,在本实施例中,目标游戏地图中禁止通行的参考网格可以但不限于为起点网格/终点网格提供一定的启发信息,以减少目标路径的确定过程中无效的路径遍历。
可选地,在本实施例中,目标操作信息可以但不限用于指示目标寻路操作的执行起始位置,以及通过执行目标寻路操作所得到的寻路结果路径的路径走向;寻路结果路径可以但不限用于表示目标路径的路径信息,而目标路径的路径走向由目标寻路请求确定。
需要说明的是,响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格,其中,目标寻路请求用于请求获取从起点网格至终点网格的目标路径,目标网格集合包括目标游戏地图中的一组网格;获取起点网格关联的起点启发信息,其中,起点启发信息为目标网格集合中允许为起点网格提供寻路启发的参考网格的信息,参考网格为目标游戏地图中禁止通行的网格;获取终点网格关联的终点启发信息,其中,终点启发信息为目标网格集合中允许为终点网格提供寻路启发的参考网格的信息;根据起点启发信息与终点启发信息获取目标操作信息,其中,目标操作信息为目标寻路操作的执行指示信息;按照目标操作信息在目标网格集合中执行目标寻路操作,得到寻路结果路径,其中,目标路径包括寻路结果路径。
进一步举例说明,可选的例如图4所示,获取目标游戏地图402上触发的自动寻路操作(如控制操作对象406自动寻路至五角星位置处);响应于自动寻路操作所触发的目标寻路请求,获取目标网格集合404中的起点网格和终点网格,如图4中的(a)所示;获取起点网格关联的起点启发信息,以及获取终点网格关联的终点启发信息;根据起点启发信息与终点启发信息获取目标操作信息;进一步按照目标操作信息在目标网格集合404中执行目标寻路操作,得到寻路结果路径408,其中,目标路径410包括寻路结果路径408。
通过本申请提供的实施例,响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格;获取起点网格关联的起点启发信息;获取终点网格关联的终点启发信息;根据起点启发信息与终点启发信息获取目标操作信息;按照目标操作信息在目标网格集合中执行目标寻路操作,得到寻路结果路径,通过获取目标游戏地图对应的目标网格集合中的起点网格和终点网格,并明确起点网格关联的起点启发信息以及终点网格关联的终点启发信息的方式,为用于确定目标路径的目标寻路操作配置最高效的目标操作信息,进而达到了提高目标寻路操作的执行效率的目的,从而实现了提高目标路径的确定效率的技术效果。
作为一种可选的方案,获取起点网格关联的起点启发信息,包括:
S1,获取目标游戏地图中、位于起点网格的第一预设范围内的第一目标参考网格;
S2,获取每个第一目标参考网格与起点网格之间的第一距离;
S3,根据第一距离确定每个第一目标参考网格相对于起点网格的第一启发值,其中,第一距离与第一启发值呈反向相关关系;
S4,整合每个第一启发值,得到起点启发信息。
作为一种可选的方案,获取终点网格关联的终点启发信息,包括:
S1,获取目标游戏地图中、位于终点网格的第二预设范围内的第二目标参考网格;
S2,获取每个第二目标参考网格与终点网格之间的第二距离;
S3,根据第二距离确定每个第二目标参考网格相对于终点网格的第二启发值,其中,第二距离与第二启发值呈反向相关关系;
S4,整合每个第二启发值,得到终点启发信息。
可选地,在本实施中,第一距离与第一启发值呈反向相关关系/第二距离与第二启发值呈反向相关关系可以但不限用于表示,距离越长启发值越低,或者说距离越长参考网格能够提供的启发信息越少。
需要说明的是,由于参考网格可为起点网格/终点网格提供一定的启发信息,进而在起点网格/终点网格周围存在较多的参考网格时,即表示从对应的起点网格/终点网格开启目标路径的确定操作可减少无效遍历,以提高目标路径的确定效率。
可选地,在本实施中,在第一预设范围/第二预设范围内所有的参考网络与起点网格/终点网格之间的距离一致的情况下,可以但不限于以第一预设范围/第二预设范围内的参考网络的数量进行启发值的计算;
进一步举例说明,可选的基于图4所示场景,继续例如图5所示,目标网格集合404中包括起点网格(阴影“起”)、终点网格(阴影“终”)、禁止通行的参考网格(纯黑色)、允许通行的网格(纯白色);以获取目标游戏地图中、位于起点网格的第一预设范围内的第一目标参考网格为例说明,假设第一预设范围为以起点网格为核心、一个网格为距离的范围,进而如图5所示,第一预设范围502内包括数量为2的参考网格;同理,以获取目标游戏地图中、位于终点网格的第二预设范围内的第二目标参考网格为例说明,假设第二预设范围为以起点网格为核心、一个网格为距离的范围,进而如图5所示,第二预设范围504内包括数量为4的参考网格;再者,可选的启发值与相同距离的参考网格的数量呈正向相关关系,即参考网格的数量越多启发值越高,或者说参考网格的数量越多可对起点网格/终点网格提供的启发信息更多。基于此,终点网格的启发值高于起点网格的启发值,进而以终点网格作为目标寻路操作的起始位置,以起点网格作为目标寻路操作的中止位置,反之同理。
通过本申请提供的实施例,获取目标游戏地图中、位于起点网格/终点网格的第一预设范围/第二预设范围内的第一目标参考网格/第二目标参考网格;获取每个第一目标参考网格/第二目标参考网格与起点网格/终点网格之间的第一距离/第二距离;根据第一距离/第二距离确定每个第一目标参考网格/第二目标参考网格相对于起点网格/终点网格的第一启发值/第二启发值,其中,第一距离/第二距离与第一启发值/第二启发值呈反向相关关系;整合每个第一启发值/第二启发值,得到起点启发信息/终点启发信息,实现了提高目标路径的确定灵活度的效果。
作为一种可选的方案,根据起点启发信息与终点启发信息获取目标操作信息,包括:
S1,在起点启发信息对应的启发值达到第一阈值的情况下,获取第一操作信息,其中,目标操作信息包括第一操作信息,第一操作信息用于指示从起点网格开始执行目标寻路操作;或,
S2,在终点启发信息对应的启发值达到第二阈值的情况下,获取第二操作信息,其中,目标操作信息包括第二操作信息,第二操作信息用于指示从终点网格开始执行目标寻路操作。
可选地,在本实施例中,如图6所示,在起点启发信息对应的启发值达到第一阈值的情况下,获取第一操作信息,其中,目标操作信息包括第一操作信息,第一操作信息用于指示从目标网格集合602中的起点网格开始执行目标寻路操作。
可选地,在本实施例中,基于图6所示场景,继续如图7所示,在终点启发信息对应的启发值达到第二阈值的情况下,获取第二操作信息,其中,目标操作信息包括第二操作信息,第二操作信息用于指示从目标网格集合602中的终点网格开始执行目标寻路操作。
通过本申请提供的实施例,在起点启发信息对应的启发值达到第一阈值的情况下,获取第一操作信息,其中,目标操作信息包括第一操作信息,第一操作信息用于指示从起点网格开始执行目标寻路操作;或,在终点启发信息对应的启发值达到第二阈值的情况下,获取第二操作信息,其中,目标操作信息包括第二操作信息,第二操作信息用于指示从终点网格开始执行目标寻路操作,利用正向寻路(从起点网格开始执行目标寻路操作)或反向寻路(从终点网格开始执行目标寻路操作)的方式,达到了灵活地确定目标路径的目的,实现了更高效地执行目标路径的确定操作的效果。
作为一种可选的方案,根据起点启发信息与终点启发信息获取目标操作信息,包括:
在起点启发信息对应的启发值达到第三阈值、且终点启发信息对应的启发值达到第四阈值的情况下,获取第三操作信息,其中,目标操作信息包括第三操作信息,第三操作信息用于指示分别从起点网格以及终点网格开始执行目标寻路操作。
可选地,在本实施例中,如果将从起点网格开始执行目标寻路操作理解为正向寻路、将从终点网格开始执行目标寻路操作理解为反向寻路,则可以但不限于将分别从起点网格以及终点网格开始执行目标寻路操作理解为双向寻路。
需要说明的是,在起点启发信息对应的启发值达到第三阈值、且终点启发信息对应的启发值达到第四阈值的情况下,获取第三操作信息,其中,目标操作信息包括第三操作信息,第三操作信息用于指示分别从起点网格以及终点网格开始执行目标寻路操作。
作为一种可选的方案,在获取第三操作信息之后,按照目标操作信息在目标网格集合中执行目标寻路操作,得到寻路结果路径包括:
S1,获取从起点网格开始执行目标寻路操作过程中的多个第一网格;根据多个第一网格中的每个第一网格对应的目标消耗值,在多个第一网格中确定出N个第一目标网格,其中,目标消耗值用于表示通行网格时所消耗的虚拟值,N个第一目标网格用于构成第一寻路结果路径,N为自然数;
S2,获取从终点网格开始执行目标寻路操作过程中的多个第二网格;根据多个第二网格中的每个第二网格对应的目标消耗值,在多个第一网格中确定出M个第二目标网格,其中,M个第二目标网格用于构成第二寻路结果路径,M为自然数;
S3,在多个第一网格中的第一网格,与多个第二网格中的第二网格出现重复的情况下,根据第一寻路结果路径以及第二寻路结果路径生成寻路结果路径。
需要说明的是,获取从起点网格开始执行目标寻路操作过程中的多个第一网格;根据多个第一网格中的每个第一网格对应的目标消耗值,在多个第一网格中确定出N个第一目标网格,其中,目标消耗值用于表示通行网格时所消耗的虚拟值,N个第一目标网格用于构成第一寻路结果路径,N为自然数;获取从终点网格开始执行目标寻路操作过程中的多个第二网格;根据多个第二网格中的每个第二网格对应的目标消耗值,在多个第一网格中确定出M个第二目标网格,其中,M个第二目标网格用于构成第二寻路结果路径,M为自然数;在多个第一网格中的第一网格,与多个第二网格中的第二网格出现重复的情况下,根据第一寻路结果路径以及第二寻路结果路径生成寻路结果路径。
进一步举例说明,可选的例如图8所示,具体步骤如下:
步骤S802-1,将起点网格加入第一列表(OpenList1);
步骤S802-2,将终点网格加入第二列表(OpenList2);
步骤S804,判断第一列表非空和/或第二列表非空,若是,则执行步骤S806-1以及步骤S806-2;
步骤S804-1,判断第一列表是否非空;
步骤S804-2,判断第二列表是否非空;
步骤S806,取最优网格加入第三列表(CloseList);
步骤S808,判断是否存在下一邻接网格,若是,则执行步骤S810,若否,则执行步骤S804;
步骤S810,计算下一邻接网格权重;
步骤S812,判断网格是否存在重合,若是,则执行步骤S816,若否,则执行步骤S814;
步骤S814,加入其最优网格所在列表;
步骤S816,生成寻路结果路径。
作为一种可选的方案,目标消耗值包括以下至少之一:
当前网格的上一网格移动至当前网格所需消耗的第一虚拟值;
当前网格移动至终点网格或起点网格所需消耗的第二虚拟值。
可选地,在本实施例中,目标消耗值可以但不限于为第一虚拟值、或第二虚拟值、或第一虚拟值以及第二虚拟值之间的组合值(如二者之和、差、积、方差等)。
进一步举例说明,可选地例如输入所有的导航寻路网格(目标网格集合)组成的连通图(目标游戏地图),以及寻路的起点(起点网格)和终点(终点网格);维护两个OpenList,分别存放从起点和终点需要遍历到的多边形网格(多条候选寻路路径);首先需要将起点所在多边形网格加入OpenList1,将终点所在多边形网格加入OpenList2;交叉遍历OpenList1和OpenList2,每次从中队列中获取队首元素进行计算,更新邻接多边形网格的权重以及将邻接多边形网格放入相应的OpenList中;持续执行上述过程,直到两个OpenList任一个为空,或者处理到的某个多边形网格在两个OpenList中都存在,此时便可将从起点到该多边形网格的路径和该多边形网格到终点的路径拼接起来,得到最终的寻路路径(寻路结果路径)。
具体的,在本实施例中,处理多边形网格的具体过程如下所示:
起始节点加入OpenList1,目标结点加入OpenList2;(While(OpenList1非空)and(OpenList2非空)do;从OpenList1里弹出队首节点(OpenList为权重优先的优先级队列);
再者,对于取出的节点,执行如下操作:其加入CloseList(标记为DT_NODE_CLOSED);foreach该节点的邻接节点(不在CloseList里)do;更新该邻接节点的权值(根据node的权重和启发函数计算);if该节点在OpenList2中then返回;将该邻接节点放入OpenList1;
进一步,从OpenList2里弹出队首节点(OpenList为权重优先的优先级队列);
此外,对于取出的节点,执行如下操作:将其加入CloseList(标记为DT_NODE_CLOSED);foreach该节点的邻接节点(不在CloseList里)do;更新该邻接节点的权值(根据node的权重和启发函数计算);if该节点在OpenList1中then返回;将该邻接节点放入OpenList2;其中,可以但不限于将上述过程抽成同一个函数进行实现。
其中,每次从OpenList中获取多边形网格节点之后,都需要根据起点到当前网格的累积权重和启发函数进行相加计算,得到该网格最终的权重,这个权重即为如果它作为寻路路径的话,所需要花费的代价估值,其公式如下:
当前节点的权重=min(从起始节点到当前节点的累加权重)+从当前节点到目标节点的启发权重。
其中,启发权重使用启发函数计算,这里采用当前节点与目标节点的直线距离作为启发函数。
此外,在本实施例中,如果当前的多边形节点,既在OpenList1中出现过,又在OpenList2中出现过,说明从起点和终点都可达到这个节点,那么此时便可将从起点到该多边形网格的路径和该多边形网格到终点的路径拼接起来,得到最终的寻路路径。
再者,假设在一次寻路方法中最多遍历了n步,那么对于每一步,都要从OpenList里弹出队首最优节点,又因为OpenList是一个使用二叉堆优化过的数据结构,其bubbleUp()和trickDown()皆为log级复杂度,故这个过程耗时为log(m),m为当前OpenList的节点数目。故而总的时间复杂度为nlog(m)。
作为一种可选的方案,在根据第一寻路结果路径以及第二寻路结果路径生成寻路结果路径之前,包括:
S1,在从起点网格开始执行目标寻路操作过程中,利用第一标识对获取到的网格进行标记,得到多个第一网格;
S2,在从终点网格开始执行目标寻路操作过程中,利用第二标识对获取到的网格进行标记,得到多个第二网格;
S3,在从起点网格开始执行目标寻路操作、以及从终点网格开始执行目标寻路操作过程中,利用第三标识对在多个第一网格中确定出的N个网格、以及在多个第二网格中确定出的M个网格进行标记,得到(M+N)个目标网格,其中,(M+N)个目标网格包括N个第一目标网格以及M个第二目标网格。
可选地,在本实施例中,如图8中所示的场景中,步骤S806中的第三列表可以但不限于被标记的方式代替,如对最优网格进行第三标识的标记,以达到创建第三列表的相同效果,进而提高资源的利用率。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述目标路径的确定方法的目标路径的确定装置。如图9所示,该装置包括:
第一获取单元902,用于响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格,其中,目标寻路请求用于请求获取从起点网格至终点网格的目标路径,目标网格集合包括目标游戏地图中的一组网格;
第二获取单元904,用于获取起点网格关联的起点启发信息,其中,起点启发信息为目标网格集合中允许为起点网格提供寻路启发的参考网格的信息,参考网格为目标游戏地图中禁止通行的网格;
第三获取单元906,用于获取终点网格关联的终点启发信息,其中,终点启发信息为目标网格集合中允许为终点网格提供寻路启发的参考网格的信息;
第四获取单元908,用于根据起点启发信息与终点启发信息获取目标操作信息,其中,目标操作信息为目标寻路操作的执行指示信息;
执行单元910,用于按照目标操作信息在目标网格集合中执行目标寻路操作,得到寻路结果路径,其中,目标路径包括寻路结果路径。
可选地,在本实施例中,上述目标路径的确定装置可以但不限于应用在目标游戏应用,例如目标游戏应用可以但不限于由目标账号登录运行在游戏客户端中的目标射击应用,由目标账号控制虚拟操作对象。也就是说,玩家通过账号登录运行在游戏客户端中的目标游戏应用,并控制虚拟操作对象;可选地,目标游戏应用配置有目标游戏地图,被控制的虚拟操作对象在该目标游戏地图上进行移动,假设虚拟操作对象被控制从目标游戏地图中的位置A移动至位置B,则可以但不限于利用上述目标路径的确定装置确定位置A至位置B的目标路径。
可选地,在本实施例中,目标游戏地图可以但不限理解为由多个网格组成的网格网络,在获取到目标寻路请求的情况下,获取目标寻路请求所请求目标游戏地图上的起点位置以及终点位置;进一步获取起点位置在目标网格集合中对应的起点网格、终点位置包括目标网格集合中对应的终点网格。
可选地,在本实施例中,目标游戏地图上可以但不限于配置有允许通行的网格以及禁止通行的网格,其中,目标路径中包括多个允许通行的网格,且目标路径中不包括禁止通行的网格。
可选地,在本实施例中,目标游戏地图中禁止通行的参考网格可以但不限于为起点网格/终点网格提供一定的启发信息,以减少目标路径的确定过程中无效的路径遍历。
可选地,在本实施例中,目标操作信息可以但不限用于指示目标寻路操作的执行起始位置,以及通过执行目标寻路操作所得到的寻路结果路径的路径走向;寻路结果路径可以但不限用于表示目标路径的路径信息,而目标路径的路径走向由目标寻路请求确定。
需要说明的是,响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格,其中,目标寻路请求用于请求获取从起点网格至终点网格的目标路径,目标网格集合包括目标游戏地图中的一组网格;获取起点网格关联的起点启发信息,其中,起点启发信息为目标网格集合中允许为起点网格提供寻路启发的参考网格的信息,参考网格为目标游戏地图中禁止通行的网格;获取终点网格关联的终点启发信息,其中,终点启发信息为目标网格集合中允许为终点网格提供寻路启发的参考网格的信息;根据起点启发信息与终点启发信息获取目标操作信息,其中,目标操作信息为目标寻路操作的执行指示信息;按照目标操作信息在目标网格集合中执行目标寻路操作,得到寻路结果路径,其中,目标路径包括寻路结果路径。
具体实施例可以参考上述目标路径的确定装置中所示示例,本示例中在此不再赘述。
通过本申请提供的实施例,响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格;获取起点网格关联的起点启发信息;获取终点网格关联的终点启发信息;根据起点启发信息与终点启发信息获取目标操作信息;按照目标操作信息在目标网格集合中执行目标寻路操作,得到寻路结果路径,通过获取目标游戏地图对应的目标网格集合中的起点网格和终点网格,并明确起点网格关联的起点启发信息以及终点网格关联的终点启发信息的方式,为用于确定目标路径的目标寻路操作配置最高效的目标操作信息,进而达到了提高目标寻路操作的执行效率的目的,从而实现了提高目标路径的确定效率的技术效果。
作为一种可选的方案,第二获取单元904,包括:
第一获取模块,用于获取目标游戏地图中、位于起点网格的第一预设范围内的第一目标参考网格;
第二获取模块,用于获取每个第一目标参考网格与起点网格之间的第一距离;
第一确定模块,用于根据第一距离确定每个第一目标参考网格相对于起点网格的第一启发值,其中,第一距离与第一启发值呈反向相关关系;
第一整合模块,用于整合每个第一启发值,得到起点启发信息。
具体实施例可以参考上述目标路径的确定方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,第三获取单元906,包括:
第三获取模块,用于获取目标游戏地图中、位于终点网格的第二预设范围内的第二目标参考网格;
第四获取模块,用于获取每个第二目标参考网格与终点网格之间的第二距离;
第二确定模块,用于根据第二距离确定每个第二目标参考网格相对于终点网格的第二启发值,其中,第二距离与第二启发值呈反向相关关系;
第二整合模块,用于整合每个第二启发值,得到终点启发信息。
具体实施例可以参考上述目标路径的确定方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,第四获取单元908,包括:
第五获取模块,用于在起点启发信息对应的启发值达到第一阈值的情况下,获取第一操作信息,其中,目标操作信息包括第一操作信息,第一操作信息用于指示从起点网格开始执行目标寻路操作;或,
第六获取模块,用于在终点启发信息对应的启发值达到第二阈值的情况下,获取第二操作信息,其中,目标操作信息包括第二操作信息,第二操作信息用于指示从终点网格开始执行目标寻路操作。
具体实施例可以参考上述目标路径的确定方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,第四获取单元908,包括:
第七获取模块,用于在起点启发信息对应的启发值达到第三阈值、且终点启发信息对应的启发值达到第四阈值的情况下,获取第三操作信息,其中,目标操作信息包括第三操作信息,第三操作信息用于指示分别从起点网格以及终点网格开始执行目标寻路操作。
具体实施例可以参考上述目标路径的确定方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,执行单元910包括:
第五获取单元,用于在获取第三操作信息之后,获取从起点网格开始执行目标寻路操作过程中的多个第一网格;第一确定单元,用于在获取第三操作信息之后,根据多个第一网格中的每个第一网格对应的目标消耗值,在多个第一网格中确定出N个第一目标网格,其中,目标消耗值用于表示通行网格时所消耗的虚拟值,N个第一目标网格用于构成第一寻路结果路径,N为自然数;
第六获取单元,用于在获取第三操作信息之后,获取从终点网格开始执行目标寻路操作过程中的多个第二网格;第二确定单元,用于在获取第三操作信息之后,根据多个第二网格中的每个第二网格对应的目标消耗值,在多个第一网格中确定出M个第二目标网格,其中,M个第二目标网格用于构成第二寻路结果路径,M为自然数;
生成单元,用于在获取第三操作信息之后,在多个第一网格中的第一网格,与多个第二网格中的第二网格出现重复的情况下,根据第一寻路结果路径以及第二寻路结果路径生成寻路结果路径。
具体实施例可以参考上述目标路径的确定方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,目标消耗值包括以下至少之一:
当前网格的上一网格移动至当前网格所需消耗的第一虚拟值;
当前网格移动至终点网格或起点网格所需消耗的第二虚拟值。
具体实施例可以参考上述目标路径的确定方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,包括:
第三确定单元,用于在根据第一寻路结果路径以及第二寻路结果路径生成寻路结果路径之前,在从起点网格开始执行目标寻路操作过程中,利用第一标识对获取到的网格进行标记,得到多个第一网格;
第四确定单元,用于在根据第一寻路结果路径以及第二寻路结果路径生成寻路结果路径之前,在从终点网格开始执行目标寻路操作过程中,利用第二标识对获取到的网格进行标记,得到多个第二网格;
第五确定单元,用于在根据第一寻路结果路径以及第二寻路结果路径生成寻路结果路径之前,在从起点网格开始执行目标寻路操作、以及从终点网格开始执行目标寻路操作过程中,利用第三标识对在多个第一网格中确定出的N个网格、以及在多个第二网格中确定出的M个网格进行标记,得到(M+N)个目标网格,其中,(M+N)个目标网格包括N个第一目标网格以及M个第二目标网格。
具体实施例可以参考上述目标路径的确定方法中所示示例,本示例中在此不再赘述。
根据本发明实施例的又一个方面,还提供了一种用于实施上述目标路径的确定方法的电子设备,如图10所示,该电子设备包括存储器1002和处理器1004,该存储器1002中存储有计算机程序,该处理器1004被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格,其中,目标寻路请求用于请求获取从起点网格至终点网格的目标路径,目标网格集合包括目标游戏地图中的一组网格;
S2,获取起点网格关联的起点启发信息,其中,起点启发信息为目标网格集合中允许为起点网格提供寻路启发的参考网格的信息,参考网格为目标游戏地图中禁止通行的网格;
S3,获取终点网格关联的终点启发信息,其中,终点启发信息为目标网格集合中允许为终点网格提供寻路启发的参考网格的信息;
S4,根据起点启发信息与终点启发信息获取目标操作信息,其中,目标操作信息为目标寻路操作的执行指示信息;
S5,按照目标操作信息在目标网格集合中执行目标寻路操作,得到寻路结果路径,其中,目标路径包括寻路结果路径。
可选地,本领域普通技术人员可以理解,图10所示的结构仅为示意,电子设备也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图10其并不对上述电子设备的结构造成限定。例如,电子设备还可包括比图10中所示更多或者更少的组件(如网络接口等),或者具有与图10所示不同的配置。
其中,存储器1002可用于存储软件程序以及模块,如本发明实施例中的目标路径的确定方法和装置对应的程序指令/模块,处理器1004通过运行存储在存储器1002内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的目标路径的确定方法。存储器1002可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1002可进一步包括相对于处理器1004远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1002具体可以但不限于用于存储目标寻路请求、目标操作信息以及寻路结果路径等信息。作为一种示例,如图10所示,上述存储器1002中可以但不限于包括上述目标路径的确定装置中的第一获取单元902、第二获取单元904、第三获取单元906、第四获取单元908及执行单元910。此外,还可以包括但不限于上述目标路径的确定装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置1006用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1006包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1006为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子设备还包括:显示器1008,用于显示上述目标寻路请求、目标操作信息以及寻路结果路径等信息;和连接总线1010,用于连接上述电子设备中的各个模块部件。
在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(Peer To Peer,简称P2P)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述目标路径的确定方法,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格,其中,目标寻路请求用于请求获取从起点网格至终点网格的目标路径,目标网格集合包括目标游戏地图中的一组网格;
S2,获取起点网格关联的起点启发信息,其中,起点启发信息为目标网格集合中允许为起点网格提供寻路启发的参考网格的信息,参考网格为目标游戏地图中禁止通行的网格;
S3,获取终点网格关联的终点启发信息,其中,终点启发信息为目标网格集合中允许为终点网格提供寻路启发的参考网格的信息;
S4,根据起点启发信息与终点启发信息获取目标操作信息,其中,目标操作信息为目标寻路操作的执行指示信息;
S5,按照目标操作信息在目标网格集合中执行目标寻路操作,得到寻路结果路径,其中,目标路径包括寻路结果路径。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (8)

1.一种目标路径的确定方法,其特征在于,包括:
响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格,其中,所述目标寻路请求用于请求获取从所述起点网格至所述终点网格的目标路径,所述目标网格集合包括目标游戏地图中的一组网格;
获取所述起点网格关联的起点启发信息,其中,所述起点启发信息为所述目标网格集合中允许为所述起点网格提供寻路启发的参考网格的信息,所述参考网格为所述目标游戏地图中禁止通行的网格;
获取所述终点网格关联的终点启发信息,其中,所述终点启发信息为所述目标网格集合中允许为所述终点网格提供寻路启发的参考网格的信息;
在所述起点启发信息对应的启发值达到第一阈值的情况下,获取第一操作信息,其中,目标操作信息包括所述第一操作信息,所述目标操作信息为目标寻路操作的执行指示信息,所述第一操作信息用于指示从所述起点网格开始执行所述目标寻路操作;或,在所述终点启发信息对应的启发值达到第二阈值的情况下,获取第二操作信息,其中,所述目标操作信息包括所述第二操作信息,所述第二操作信息用于指示从所述终点网格开始执行所述目标寻路操作;或,在所述起点启发信息对应的启发值达到第三阈值、且所述终点启发信息对应的启发值达到第四阈值的情况下,获取第三操作信息,其中,所述目标操作信息包括所述第三操作信息,所述第三操作信息用于指示分别从所述起点网格以及所述终点网格开始执行所述目标寻路操作;
按照所述目标操作信息在所述目标网格集合中执行所述目标寻路操作,得到寻路结果路径,其中,所述目标路径包括所述寻路结果路径;
在所述获取第三操作信息之后,所述按照所述目标操作信息在所述目标网格集合中执行所述目标寻路操作,得到寻路结果路径包括:
获取从所述起点网格开始执行所述目标寻路操作过程中的多个第一网格;根据所述多个第一网格中的每个第一网格对应的目标消耗值,在所述多个第一网格中确定出N个第一目标网格,其中,所述目标消耗值用于表示通行网格时所消耗的虚拟值,所述N个第一目标网格用于构成第一寻路结果路径,N为自然数;
获取从所述终点网格开始执行所述目标寻路操作过程中的多个第二网格;根据所述多个第二网格中的每个第二网格对应的目标消耗值,在所述多个第一网格中确定出M个第二目标网格,其中,所述M个第二目标网格用于构成第二寻路结果路径,M为自然数;
在所述多个第一网格中的第一网格,与所述多个第二网格中的第二网格出现重复的情况下,根据所述第一寻路结果路径以及所述第二寻路结果路径生成所述寻路结果路径。
2.根据权利要求1所述的方法,其特征在于,所述获取所述起点网格关联的起点启发信息,包括:
获取所述目标游戏地图中、位于所述起点网格的第一预设范围内的第一目标参考网格;
获取每个所述第一目标参考网格与所述起点网格之间的第一距离;
根据所述第一距离确定每个所述第一目标参考网格相对于所述起点网格的第一启发值,其中,所述第一距离与所述第一启发值呈反向相关关系;
整合每个所述第一启发值,得到所述起点启发信息。
3.根据权利要求1所述的方法,其特征在于,所述获取所述终点网格关联的终点启发信息,包括:
获取所述目标游戏地图中、位于所述终点网格的第二预设范围内的第二目标参考网格;
获取每个所述第二目标参考网格与所述终点网格之间的第二距离;
根据所述第二距离确定每个所述第二目标参考网格相对于所述终点网格的第二启发值,其中,所述第二距离与所述第二启发值呈反向相关关系;
整合每个所述第二启发值,得到所述终点启发信息。
4.根据权利要求1所述的方法,其特征在于,所述目标消耗值包括以下至少之一:
当前网格的上一网格移动至所述当前网格所需消耗的第一虚拟值;
所述当前网格移动至所述终点网格或所述起点网格所需消耗的第二虚拟值。
5.根据权利要求1所述的方法,其特征在于,在所述根据所述第一寻路结果路径以及所述第二寻路结果路径生成所述寻路结果路径之前,包括:
在从所述起点网格开始执行所述目标寻路操作过程中,利用第一标识对获取到的网格进行标记,得到所述多个第一网格;
在从所述终点网格开始执行所述目标寻路操作过程中,利用第二标识对获取到的网格进行标记,得到所述多个第二网格;
在从所述起点网格开始执行所述目标寻路操作、以及从所述终点网格开始执行所述目标寻路操作过程中,利用第三标识对在所述多个第一网格中确定出的N个网格、以及在所述多个第二网格中确定出的M个网格进行标记,得到(M+N)个目标网格,其中,所述(M+N)个目标网格包括所述N个第一目标网格以及所述M个第二目标网格。
6.一种目标路径的确定装置,其特征在于,包括:
第一获取单元,用于响应于目标寻路请求,获取目标网格集合中的起点网格和终点网格,其中,所述目标寻路请求用于请求获取从所述起点网格至所述终点网格的目标路径,所述目标网格集合包括目标游戏地图中的一组网格;
第二获取单元,用于获取所述起点网格关联的起点启发信息,其中,所述起点启发信息为所述目标网格集合中允许为所述起点网格提供寻路启发的参考网格的信息,所述参考网格为所述目标游戏地图中禁止通行的网格;
第三获取单元,用于获取所述终点网格关联的终点启发信息,其中,所述终点启发信息为所述目标网格集合中允许为所述终点网格提供寻路启发的参考网格的信息;
第四获取单元,用于根据所述起点启发信息与所述终点启发信息获取目标操作信息,其中,所述目标操作信息为目标寻路操作的执行指示信息;
执行单元,用于按照所述目标操作信息在所述目标网格集合中执行所述目标寻路操作,得到寻路结果路径,其中,所述目标路径包括所述寻路结果路径;
所述第四获取单元,包括:
第五获取模块,用于在所述起点启发信息对应的启发值达到第一阈值的情况下,获取第一操作信息,其中,所述目标操作信息包括所述第一操作信息,所述第一操作信息用于指示从所述起点网格开始执行所述目标寻路操作;或,
第六获取模块,用于在所述终点启发信息对应的启发值达到第二阈值的情况下,获取第二操作信息,其中,所述目标操作信息包括所述第二操作信息,所述第二操作信息用于指示从所述终点网格开始执行所述目标寻路操作;或,
第七获取模块,用于在所述起点启发信息对应的启发值达到第三阈值、且所述终点启发信息对应的启发值达到第四阈值的情况下,获取第三操作信息,其中,所述目标操作信息包括所述第三操作信息,所述第三操作信息用于指示分别从所述起点网格以及所述终点网格开始执行所述目标寻路操作;
所述执行单元,包括:
第五获取单元,用于在所述获取第三操作信息之后,获取从所述起点网格开始执行所述目标寻路操作过程中的多个第一网格;
第一确定单元,用于在所述获取第三操作信息之后,根据所述多个第一网格中的每个第一网格对应的目标消耗值,在所述多个第一网格中确定出N个第一目标网格,其中,所述目标消耗值用于表示通行网格时所消耗的虚拟值,所述N个第一目标网格用于构成第一寻路结果路径,N为自然数;
第六获取单元,用于在所述获取第三操作信息之后,获取从所述终点网格开始执行所述目标寻路操作过程中的多个第二网格;
第二确定单元,用于在所述获取第三操作信息之后,根据所述多个第二网格中的每个第二网格对应的目标消耗值,在所述多个第一网格中确定出M个第二目标网格,其中,所述M个第二目标网格用于构成第二寻路结果路径,M为自然数;
生成单元,用于在所述获取第三操作信息之后,在所述多个第一网格中的第一网格,与所述多个第二网格中的第二网格出现重复的情况下,根据所述第一寻路结果路径以及所述第二寻路结果路径生成所述寻路结果路径。
7.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至5任一项中所述的方法。
8.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至5任一项中所述的方法。
CN202111088399.XA 2021-09-16 2021-09-16 目标路径的确定方法、装置和存储介质及电子设备 Active CN113730915B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111088399.XA CN113730915B (zh) 2021-09-16 2021-09-16 目标路径的确定方法、装置和存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111088399.XA CN113730915B (zh) 2021-09-16 2021-09-16 目标路径的确定方法、装置和存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN113730915A CN113730915A (zh) 2021-12-03
CN113730915B true CN113730915B (zh) 2023-08-25

Family

ID=78739415

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111088399.XA Active CN113730915B (zh) 2021-09-16 2021-09-16 目标路径的确定方法、装置和存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN113730915B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070098363A (ko) * 2006-03-31 2007-10-05 (주)엔브이엘소프트 3차원 맵에서의 향상된 캐릭터 이동 경로 설정 방법
JP2007287052A (ja) * 2006-04-19 2007-11-01 Toshiba Corp 自動設計方法、自動設計装置及び半導体集積回路の製造方法
CN103714234A (zh) * 2013-08-09 2014-04-09 网易(杭州)网络有限公司 一种游戏中确定对象移动路径的方法和设备
CN107687859A (zh) * 2017-09-06 2018-02-13 电子科技大学 基于a星算法的最短寻路方法
CN107744663A (zh) * 2017-10-19 2018-03-02 广州爱九游信息技术有限公司 人工智能ai单位的寻路方法及装置
WO2018130135A1 (zh) * 2017-01-13 2018-07-19 腾讯科技(深圳)有限公司 一种控制模拟对象寻路的方法、装置及服务器
CN111375205A (zh) * 2020-03-06 2020-07-07 网易(杭州)网络有限公司 游戏中寻路路径的处理方法、装置、电子设备及存储介质
CN112386914A (zh) * 2019-08-14 2021-02-23 上海幻电信息科技有限公司 面向虚拟对象的路径规划方法、装置以及计算机设备
CN112619150A (zh) * 2020-12-15 2021-04-09 成都完美天智游科技有限公司 基于游戏场景的寻路方法及装置、设备、介质
CN113101665A (zh) * 2021-05-10 2021-07-13 网易(杭州)网络有限公司 路网生成方法、装置、存储介质及计算机设备

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070098363A (ko) * 2006-03-31 2007-10-05 (주)엔브이엘소프트 3차원 맵에서의 향상된 캐릭터 이동 경로 설정 방법
JP2007287052A (ja) * 2006-04-19 2007-11-01 Toshiba Corp 自動設計方法、自動設計装置及び半導体集積回路の製造方法
CN103714234A (zh) * 2013-08-09 2014-04-09 网易(杭州)网络有限公司 一种游戏中确定对象移动路径的方法和设备
WO2018130135A1 (zh) * 2017-01-13 2018-07-19 腾讯科技(深圳)有限公司 一种控制模拟对象寻路的方法、装置及服务器
CN107687859A (zh) * 2017-09-06 2018-02-13 电子科技大学 基于a星算法的最短寻路方法
CN107744663A (zh) * 2017-10-19 2018-03-02 广州爱九游信息技术有限公司 人工智能ai单位的寻路方法及装置
CN112386914A (zh) * 2019-08-14 2021-02-23 上海幻电信息科技有限公司 面向虚拟对象的路径规划方法、装置以及计算机设备
CN111375205A (zh) * 2020-03-06 2020-07-07 网易(杭州)网络有限公司 游戏中寻路路径的处理方法、装置、电子设备及存储介质
CN112619150A (zh) * 2020-12-15 2021-04-09 成都完美天智游科技有限公司 基于游戏场景的寻路方法及装置、设备、介质
CN113101665A (zh) * 2021-05-10 2021-07-13 网易(杭州)网络有限公司 路网生成方法、装置、存储介质及计算机设备

Also Published As

Publication number Publication date
CN113730915A (zh) 2021-12-03

Similar Documents

Publication Publication Date Title
CN106964156B (zh) 一种寻路方法以及装置
US20230376347A1 (en) Task allocation method, apparatus, storage medium, and electronic device
CN110595482A (zh) 一种带避障权重的路径规划方法、装置及电子设备
CN105915650B (zh) 负载均衡方法和装置
CN110532077B (zh) 任务处理方法、装置及存储介质
CN106339493A (zh) 一种数据处理方法及相关装置
CN108259195A (zh) 异常事件的影响范围的确定方法及系统
CN106776014B (zh) 异构计算中的并行加速方法及系统
CN113730915B (zh) 目标路径的确定方法、装置和存储介质及电子设备
CN109802859B (zh) 一种网络图中的节点推荐方法和服务器
CN111106960A (zh) 一种虚拟网络的映射方法、映射装置及可读存储介质
CN109827584A (zh) 路径规划方法、装置、电子设备与存储介质
US20190362240A1 (en) Information processing device, neural network design method, and recording medium
JP6581316B2 (ja) 計算機システム及び制御方法
CN109684062B (zh) 基于成本的跨云平台任务调度方法和系统
CN108710514B (zh) 对象跳转控制方法和装置、存储介质及电子装置
CN109905880B (zh) 一种网络划分方法、系统及电子设备和存储介质
CN104852849A (zh) 一种ospf配置方法以及相关装置
CN113347268B (zh) 基于分布式网络组网方法、装置、存储介质及计算机设备
CN112667334B (zh) 设备控制信息的配置方法、装置、电子设备及存储介质
CN109412944B (zh) 基于微服务的请求转发方法、装置和服务器
CN110598182A (zh) 一种信息预测的方法及相关设备
CN112199754B (zh) 坐标定位方法和装置、存储介质及电子设备
KR101625797B1 (ko) 소셜 네트워크와 물리적 네트워크가 오버레이된 환경에서의 컨텐츠 배치 방법 및 시스템
US9731192B1 (en) Task-based content management

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant