CN110772791B - 三维游戏场景的路线生成方法、装置和存储介质 - Google Patents
三维游戏场景的路线生成方法、装置和存储介质 Download PDFInfo
- Publication number
- CN110772791B CN110772791B CN201911071532.3A CN201911071532A CN110772791B CN 110772791 B CN110772791 B CN 110772791B CN 201911071532 A CN201911071532 A CN 201911071532A CN 110772791 B CN110772791 B CN 110772791B
- Authority
- CN
- China
- Prior art keywords
- grid
- type region
- dimensional
- region
- route
- 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
Links
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
- A63F13/56—Computing 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种三维游戏场景的路线生成方法、装置和存储介质。该方法包括:通过目标寻路引擎对三维游戏场景的地形进行处理,得到三维导航网格数据,并将三维导航网格数据转化为第一二维网格;确定第一二维网格中的第一类型区域和第二类型区域,其中,目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路成功或失败,并辅助虚拟对象在第二类型区域中寻路失败,第一类型区域和第二类型区域为虚拟对象在三维游戏场景可寻路的区域;将第一类型区域和第二类型区域进行连通,得到第二二维网格;根据第二二维网格生成虚拟对象在三维游戏场景中的寻路路线。通过本发明,达到了提高三维游戏场景中虚拟对象的寻路路线的生成效率的效果。
Description
技术领域
本发明涉及数据处理领域,具体而言,涉及一种三维游戏场景的路线生成方法、装置和存储介质。
背景技术
目前,在三维(3D)游戏场景中,通常通过开源寻路引擎的Recast工具生成三维导航网格数据,但该三维导航网格数据存在非常多的孤岛区域。这些孤岛区域对于开源寻路引擎Detour来说都是无法寻路的,而这些孤岛区域在三维游戏场景中却是需要进行寻路。
大量存在的孤岛区域会导致增大开源寻路引擎的Detour工具寻路失败的概率,降低了搜索有效路径的效率,从而导致对三维游戏场景中虚拟对象的寻路路线的生成效率低的问题。
针对现有技术中对三维游戏场景中虚拟对象的寻路路线的生成效率低的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种三维游戏场景的路线生成方法、装置和存储介质,以至少解决三维游戏场景中虚拟对象的寻路路线的生成效率低的技术问题。
为了实现上述目的,根据本发明的一个方面,提供了一种三维游戏场景的路线生成方法。该方法包括:
通过目标寻路引擎对三维游戏场景的地形进行处理,得到三维导航网格数据,并将三维导航网格数据转化为第一二维网格;确定第一二维网格中的第一类型区域和第二类型区域,其中,目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路成功或失败,并辅助虚拟对象在第二类型区域中寻路失败,第一类型区域和第二类型区域为虚拟对象在三维游戏场景可寻路的区域;将第一类型区域和第二类型区域进行连通,得到第二二维网格;根据第二二维网格生成虚拟对象在三维游戏场景中的寻路路线。
可选地,将第一类型区域和第二类型区域进行连通,得到第二二维网格包括:获取第一类型区域中的第一网格单元,其中,第一网格单元位于第一类型区域的边界;在第二类型区域的边界上,获取与第一网格单元距离最近的第二网格单元;将第一网格单元与对应的第二网格单元进行连通,得到第二二维网格。
可选地,将第一网格单元与对应的第二网格单元进行连通,得到第二二维网格包括以下至少之一:将每个第一网格单元的信息记录在对应的第二网格单元中;将第二网格单元的信息记录在对应的每个第一网格单元。
可选地,确定第一二维网格中的第一类型区域包括:通过每个网格单元的连通属性,确定第一二维网格的第一数量的第一区域,其中,第一区域中的每相邻两个网格单元处于连通状态;在第一数量的第一区域中,将具有相同标识信息的多个第一区域,合并为一个第二区域,得到第二数量的第二区域;从第二数量的第二区域中,选取第一类型区域和第二类型区域。
可选地,在目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路成功的情况下,选取第一类型区域包括以下之一:将区域尺寸大于第一阈值的第二区域,确定为第一类型区域;将区域表面平坦度大于第二阈值的第二区域,确定为第一类型区域;将与三维游戏场景的水平面之间的距离小于第三阈值的第二区域,确定为第一类型区域;将目标指令所指示的第二区域,确定为第一类型区域。
可选地,选取第二类型区域包括:在第二数量的第二区域中,将除第一类型区域之外的每个第二区域,确定为第二类型区域。
可选地,在目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路失败的情况下,选取第一类型区域和第二类型区域包括以下之一:从区域尺寸不大于第一阈值的第三数量的第二区域中,选取第一类型区域和第二类型区域;从区域表面平坦度不大于第二阈值的第四数量的第二区域中,选取第一类型区域和第二类型区域;从与三维游戏场景的水平面之间的距离不小于第三阈值的第五数量的第二区域中,选取第一类型区域和第二类型区域;响应目标指令,选取第一类型区域和第二类型区域。
可选地,根据第二二维网格生成虚拟对象在三维游戏场景中的寻路路线包括:将第二二维网格切分为多个子二维网格;在每个子二维网格中,获取位于第一类型区域中的第三网格单元,得到多个第三网格单元,并获取位于第二类型区域中的第四网格单元,得到多个第四网格单元;在多个第三网格单元和多个第四网格单元中,生成寻路路线。
可选地,在多个第三网格单元和多个第四网格单元中,生成寻路路线包括:在目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路成功,且虚拟对象的位置位于至少一个第四网格单元的情况下,通过多个第三网格单元和至少一个第四网格单元,生成寻路路线;在目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路失败,且虚拟对象的位置位于至少一个第三网格单元的情况下,通过至少一个第三网格单元,生成寻路路线;在目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路失败,且虚拟对象的位置位于至少一个第四网格单元的情况下,通过至少一个第四网格单元,生成寻路路线。
可选地,第一类型区域和第二类型区域相邻。
为了实现上述目的,根据本发明的另一方面,还提供了一种三维游戏场景的路线生成装置。该装置包括:处理单元,用于通过目标寻路引擎对三维游戏场景的地形进行处理,得到三维导航网格数据,并将三维导航网格数据转化为第一二维网格;确定单元,用于确定第一二维网格中的第一类型区域和第二类型区域,其中,目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路成功或失败,并辅助虚拟对象在第二类型区域中寻路失败,第一类型区域和第二类型区域为虚拟对象在三维游戏场景可寻路的区域;连通单元,用于将第一类型区域和第二类型区域进行连通,得到第二二维网格;生成单元,用于根据第二二维网格生成虚拟对象在三维游戏场景中的寻路路线。
为了实现上述目的,根据本发明的另一方面,还提供了一种存储介质。该存储介质中存储有计算机程序,其中,计算机程序被设置为运行时执行本发明实施例的三维游戏场景的路线生成方法。
为了实现上述目的,根据本发明的另一方面,还提供了一种电子装置。该存储介质包括存储器和处理器,其特征在于,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行本发明实施例的方法。
通过本发明,采用通过目标寻路引擎对三维游戏场景的地形进行处理,得到三维导航网格数据,并将三维导航网格数据转化为第一二维网格;确定第一二维网格中的第一类型区域和第二类型区域,其中,目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路成功或失败,并辅助虚拟对象在第二类型区域中寻路失败,第一类型区域和第二类型区域为虚拟对象在三维游戏场景可寻路的区域;将第一类型区域和第二类型区域进行连通,得到第二二维网格;根据第二二维网格生成虚拟对象在三维游戏场景中的寻路路线。也就是说,将三维游戏场景的地形的三维导航网格数据转化为二维网格,在二维网格中确定出可以被目标寻路引擎寻路成功或失败的第一类型区域和寻路失败的第二类型区域,将其连通起来,从而使得虚拟对象可以从第一类型区域到第二类型区域进行寻路,避免了虚拟对象无法在通过目标寻路引擎寻路失败的第二类型区域中进行寻路,解决了三维游戏场景中虚拟对象的寻路路线的生成效率低的技术问题,达到了提高三维游戏场景中虚拟对象进行寻路的路线生成效率的技术效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种三维游戏场景的路线生成方法的移动终端的硬件结构框图;
图2是根据本发明实施例的一种三维游戏场景的路线生成方法的流程图;
图3是根据本发明实施例的一种需要参与寻路的场景网格数据;
图4是根据本发明实施例的一种三维导航网格数据;
图5是根据本发明实施例的一种Grid网格的示意图;
图6是根据本发明实施例的一种Tile网格的示意图;以及
图7是根据本发明实施例的一种三维游戏场景的路线生成装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的一种三维游戏场景的路线生成方法的移动终端的硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述移动终端还可以包括用于通信功能的传输装置106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的一种数据处理方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种运行于上述移动终端的一种三维游戏场景的路线生成方法。图2是根据本发明实施例的一种三维游戏场景的路线生成方法的流程图。如图2所示,该流程包括如下步骤:
步骤S202,通过目标寻路引擎对三维游戏场景的地形进行处理,得到三维导航网格数据,并将三维导航网格数据转化为第一二维网格。
在本发明上述步骤S202提供的技术方案中,目标寻路引擎可以为开源寻路引擎的Recast工具。该实施例可以先通过场景编辑器导出一份需要参与寻路的三维游戏场景的地形的场景网格数据,将该场景网格数据作为目标寻路引擎的数据源,通过目标寻路引擎对该场景网格数据进行进一步处理,得到三维导航网格数据。
可选地,该实施例可以设置游戏移动单位参数,该游戏单位参数可以包括虚拟对象的半径(agent radius)、虚拟对象的攀爬高度、虚拟对象的攀爬角度、虚拟对象的跳跃高度等。然后通过目标寻路引擎的Recast工具对三维游戏场景的地形的场景网格数据进行处理,得到一份贴合三维游戏场景的地形的三维导航网格数据,其中,三维游戏场景可以为三维超大开放空间。
在通过目标寻路引擎对三维游戏场景的地形进行处理,得到三维导航网格数据之后,将三维导航网格数据转化为第一二维网格。可选地,该实施例获取三维导航网格数据中的虚拟对象的半径和网格尺寸(tile size),其中,虚拟对象的半径可以远小于网格尺寸。通过虚拟对象的半径、网格尺寸生成第一二维网格,该第一二维网格也即原始二维网格(Grid网格)。
步骤S204,确定第一二维网格中的第一类型区域和第二类型区域。
在本发明上述步骤S204提供的技术方案中,在将三维导航网格数据转化为第一二维网格之后,确定第一二维网格中的第一类型区域和第二类型区域,目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路成功或失败,并辅助虚拟对象在第二类型区域中寻路失败,第一类型区域和第二类型区域为虚拟对象在三维游戏场景可寻路的区域。
在游戏场景不太大(比如,几百×几百)的情况下,目标寻路引擎可以满足游戏场景对于寻路的基本需求。但是,对于三维游戏场景中的超大地形(比如,几万×几万)的开放游戏场景而言,通过目标寻路引擎生成的三维导航网格数据会存在非常多的难以寻路成功的特殊区域,这些特殊区域为孤岛区域,比如,为房顶、洼地等区域,从而使得目标寻路引擎无法满足三维游戏场景的寻路需求。
为了克服上述问题,该实施例确定第一二维网格中的第一类型区域和第二类型区域,其中,目标寻路引擎可以用于辅助虚拟对象在第一类型区域中寻路成功,比如,该第一类型区域为三维游戏场景中的陆地区域,目标寻路引擎也可以用于辅助虚拟对象在第一类型区域中寻路失败,比如,该第一类型区域为三维游戏场景中的孤岛区域;第二类型区域可以用于辅助虚拟对象在三维游戏场景中寻路失败,比如,该第二类型区域为孤岛区域,在这种情况下,第一类型区域和第二类型区域是无法用于虚拟对象进行寻路的,该实施例将第一类型区域和第二类型区域进行连通。
该实施例的第一类型区域和第二类型区域可以相邻,比如,第二类型区域可以被第一类型区域包围,也可以为其它的相邻方式,此处不做任何限制。
需要说明的是,该实施例的上述第一类型区域和第二类型区域为在三维游戏场景中可寻路的区域,比如,房顶虽为孤岛区域,但是可以跳下去的,洼地虽为孤岛区域,但是可以爬上来的,只是由于目标寻路引擎的局限性,对于第一类型区域寻路成功或失败,对于第二类型区域寻路失败,比如,对于目标寻路引擎,在房顶是无法跳下去,在洼地是无法爬上来的。
需要说明的是,该实施例对第一类型区域和第二类型区域的数量不做限制,比如,第一类型区域为陆地区域,可以为一个或多个,第二类型区域为孤岛区域,可以为一个或多个。
步骤S206,将第一类型区域和第二类型区域进行连通,得到第二二维网格。
在本发明上述步骤S206提供的技术方案中,将第一类型区域和第二类型区域进行连通,也即,在虚拟对象到达第一类型区域时,可以由第一类型区域达到第二类型区域,或者虚拟对象在到达第二类型区域时,可以由第二类型区域达到第一类型区域,而无论寻路引擎对其寻路是否成功。其中,将第一类型区域和第二类型区域连通后的第一二维网格,确定为第二二维网格,使得通过目标寻路引擎寻路失败的区域也可以进行寻路。
该实施例确定第一类型区域和第二类型区域的连通点,第二区域的连通点可以为第二区域中与第一区域的连通点距离最近的点,第二区域的连通点可以位于第二区域的边界,第一区域的连通点可以位于第一区域的边界。虚拟对象可以从第二区域的连通点向第一区域的连通点寻路,也可以从第一区域的连通点向第二区域的连通点寻路。
该实施例可以通过上述方法将第一二维网格中的所有第一类型区域和第二类型区域都按照上述方法进行连通,这样在第一类型区域为三维游戏场景中的陆地区域或者孤岛区域,第二类型区域为三维游戏场景中的孤岛区域的情况下,就可以将陆地区域与孤岛区域进行连通,将孤岛区域和孤岛区域进行连通,从而通过上述方法,使得三维游戏场景中的地形的任何区域之间都是可以寻路的,实现了无缝寻路,从而避免了相关技术中由于一开始无法知道区域与区域之间是否是连通,只能尝试进行路径搜索,所导致的降低搜索有效路径的效率的问题,同时也避免了在孤岛区域铺路点,构建连通图,所导致的工作量非常大,也避免了由于场景的更新迭代所导致的巨大维护成本,以及寻路出问题的几率的问题。
步骤S208,根据第二二维网格生成虚拟对象在三维游戏场景中的寻路路线。
在本发明上述步骤S208提供的技术方案中,在将第一类型区域和第二类型区域进行连通,得到第二二维网格之后,可以根据第二二维网格生成虚拟对象在三维游戏场景中的寻路路线。
该实施例可以通过预处理的JPS算法对第二二维网格进行处理,生成虚拟对象在三维游戏场景中的寻路路线,该寻路路线可以为虚拟对象从初始位置到达目标位置的最短路径,其中,预处理的JPS算法对于远距离寻路非常友好,带来开销非常的低。
可选地,该实施例JPS算法可以预先为网格里面的每个网格单元生成对应周围八个方向的跳点,这样就不用在路径搜索的过程中去生成对应方向的跳点;在远距离寻路过程中,采用预处理的JPS算法搜索最短路径,可以利用目标寻路引擎中的Detour工具的A-Star算法,用过搜索跳点的方式,来搜索最短路径。
在生成寻路路线之后,可以通过寻路路线生成路点,再借助目标寻路引擎的Detour工具驱动游戏里的虚拟对象在三维地形中移动。
通过上述步骤S202至步骤S208,采用通过目标寻路引擎对三维游戏场景的地形进行处理,得到三维导航网格数据,并将三维导航网格数据转化为第一二维网格;确定第一二维网格中的第一类型区域和第二类型区域,其中,目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路成功或失败,并辅助虚拟对象在第二类型区域中寻路失败,第一类型区域和第二类型区域为虚拟对象在三维游戏场景可寻路的区域;将第一类型区域和第二类型区域进行连通,得到第二二维网格;根据第二二维网格生成虚拟对象在三维游戏场景中的寻路路线。也就是说,将三维游戏场景的地形的三维导航网格数据转化为二维网格,在二维网格中确定出可以被目标寻路引擎寻路成功或失败的第一类型区域和寻路失败的第二类型区域,将其连通起来,从而使得虚拟对象可以从第一类型区域到第二类型区域进行寻路,避免了虚拟对象无法在通过目标寻路引擎寻路失败的第二类型区域中进行寻路,解决了三维游戏场景中虚拟对象的寻路路线的生成效率低的技术问题,达到了提高三维游戏场景中虚拟对象进行寻路的路线生成效率的技术效果。
下面对上述步骤S206,将第一类型区域和第二类型区域进行连通,得到第二二维网格的方法进行进一步介绍。
作为一种可选的实施方式,步骤S206,将第一类型区域和第二类型区域进行连通,得到第二二维网格包括:获取第一类型区域中的第一网格单元,其中,第一网格单元位于第一类型区域的边界;在第二类型区域的边界上,获取与第一网格单元距离最近的第二网格单元;将第一网格单元与对应的第二网格单元进行连通,得到第二二维网格。
在该实施例中,第一二维网格中的区域是通过多个网格单元形成的,其中,网格单元也即第一二维网格中的最小方格。该实施例的第一二维网格的第一类型区域具有边界,该第一类型区域的边界可以包括第一网格单元,第二类型区域也有边界,该第二类型区域的边界可以包括多个第二网格单元。
在第二类型区域的边界上,可以获取与第一网格单元距离最近的第二网格单元,可以将第一网格单元确定为第一类型区域的连通点,将与第一网格单元对应的距离最近的第二网格单元确定为第二类型区域的连通点,这样将第一网格单元与对应的第二网格单元进行连通,从而得到第二二维网格。
可选地,实施例的第一类型区域的边界可以包括多个第一网格单元,在第二类型区域的边界上,获取与每个第一网格单元距离最近的第二网格单元,可以将每个第一网格单元确定为第一类型区域的连通点,将与每个第一网格单元对应的距离最近的第二网格单元确定为第二类型区域的连通点,这样第一类型区域可以包括多个连通点,第二类型区域也包括对应的多个连通点,可以在多个连通点中根据不同的应用场景进行筛选,从而得到第一类型区域与第二类型区域进行连通的连通点。
下面对该实施例的将第一网格单元与对应的第二网格单元进行连通,得到第二二维网格的方法进行进一步介绍。
作为一种可选的实施方式,将第一网格单元与对应的第二网格单元进行连通,得到第二二维网格包括以下至少之一:将每个第一网格单元的信息记录在对应的第二网格单元中;将第二网格单元的信息记录在对应的每个第一网格单元。
在该实施例中,可以将每个第一网格单元的信息记录在对应的第二网格单元中,这样在虚拟对象处于第二网格单元时,可以根据第二网格单元中记录的第一网格单元的信息,寻路到第一网格单元,其中,第一网格单元的信息可以为第一网格单元在第一二维网格中的位置和/或方向;也可以将第二网格单元的信息记录在对应的每个第一网格单元,这样在虚拟对象处于第一网格单元时,可以根据第一网格单元中记录的第二网格单元的信息,寻路到第二网格单元,其中,第二网格单元的信息可以为第二网格单元在第一二维网格单元中的位置和/或方向,从而实现了将第一网格单元与对应的第二网格单元进行连通,得到第二二维网格。
下面对该实施例的确定第一二维网格中的第一类型区域的方法进行进一步介绍。
作为一种可选的实施方式,确定第一二维网格中的第一类型区域包括:通过每个网格单元的连通属性,确定第一二维网格的第一数量的第一区域,其中,第一区域中的每相邻两个网格单元处于连通状态;在第一数量的第一区域中,将具有相同标识信息的多个第一区域,合并为一个第二区域,得到第二数量的第二区域;从第二数量的第二区域中,选取第一类型区域和第二类型区域。
在该实施例中,在确定第一二维网格中的第一类型区域时,可以确定每个网格单元的连通属性,该每个网格单元的连通属性可以为每个网格单元与其相邻的网格单元是否连通,该每个网格单元的连通属性可以通过目标寻路引擎进行确定,比如,通过目标寻路引擎确定每相邻两个网格单元是否可以移动,可选地,该实施例通过虚拟对象的最大攀爬高度(max climb)和最大攀爬角度(max slope)来判断每个网格单元的连通属性。根据每个网格单元的连通属性确定第一二维网格的第一数量的第一区域,该第一区域为第一二维网格的连通区域,第一区域中的每相邻两个网格单元处于连通状态,第一数量的第一区域的尺寸大小可以不同。
该实施例的每个第一区域具有标识信息,该标识信息可以为区域编号,可以将具有相同标识信息的多个第一区域,合并为一个第二区域,也即,具有相同标识信息的多个第一区域是同属于一个第二区域的,具有不同标识信息的多个第一区域是属于不同区域的。其中,每个第一区域的标识信息可以自动生成,可选地,虚拟对象在每个可以连通的网格单元中移动,通过可以连通的网格单元生成一个大的第一区域,该第一区域的编号可以为颜色深度值。
在第一二维网格中通过将具有相同标识信息的多个第一区域合并为一个第二区域,可以得到第二数量的第二区域,从第二数量的第二区域中选取第一类型区域和第二类型区域。
下面对该实施例的从第二数量的第二区域中选取第一类型区域的方法进行介绍。
作为一种可选的实施方式,在目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路成功的情况下,选取第一类型区域包括以下之一:将区域尺寸大于第一阈值的第二区域,确定为第一类型区域;将区域表面平坦度大于第二阈值的第二区域,确定为第一类型区域;将与三维游戏场景的水平面之间的距离小于第三阈值的第二区域,确定为第一类型区域;将目标指令所指示的第二区域,确定为第一类型区域。
在该实施例中,目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路成功,该第一类型区域可以为陆地区域。可以在第二数量的第二区域中,将区域尺寸大于第一阈值的第二区域,确定为第一类型区域,比如,将第二数量的第二区域中区域尺寸最大的第二区域,确定为第一类型区域;该实施例还可以在第二数量的第二区域中,将区域表面平坦度大于第二阈值的第二区域,确定为第一类型区域,比如,将第二数量的第二区域中区域表面平坦度最大的第二区域,确定为第一类型区域;该实施例还可以在第二数量的第二区域中,将与三维游戏场景的水平面之间的距离小于第三阈值的第二区域,确定为第一类型区域,比如,将第二数量的第二区域中海拔高度最小的第二区域,确定为第一类型区域;该实施例还可以由用户进行定义,响应用户触发的目标指令,将通过该目标指令所定义的第二区域,确定为第一类型区域。
作为一种可选的实施方式,选取第二类型区域包括:在第二数量的第二区域中,将除第一类型区域之外的每个第二区域,确定为第二类型区域。
在该实施例中,在从第二数量的第二区域中选取第一类型区域之后,可以将其它第二区域,确定为第二类型区域,比如,将其它的第二区域确定为孤岛区域,该孤岛区域可以为多个。
作为一种可选的实施方式,在目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路失败的情况下,选取第一类型区域和第二类型区域包括以下之一:从区域尺寸不大于第一阈值的第三数量的第二区域中,选取第一类型区域和第二类型区域;从区域表面平坦度不大于第二阈值的第四数量的第二区域中,选取第一类型区域和第二类型区域;从与三维游戏场景的水平面之间的距离不小于第三阈值的第五数量的第二区域中,选取第一类型区域和第二类型区域;响应目标指令,选取第一类型区域和第二类型区域。
在该实施例中,目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路失败,该第一类型区域可以为孤岛区域。可以从区域尺寸不大于第一阈值的第三数量的第二区域中,选取第一类型区域和第二类型区域,比如,从区域尺寸较小的第三数量的第二区域中,随机选取相邻的第二类型区域和第二类型区域;还可以从区域表面平坦度不大于第二阈值的第四数量的第二区域中,选取相邻的第一类型区域和第二类型区域,比如,从区域表面平坦度较小的第四数量的第二区域中,随机选取相邻的第一类型区域和第二类型区域;还可以从与三维游戏场景的水平面之间的距离不小于第三阈值的第五数量的第二区域中,选取第一类型区域和第二类型区域,比如,在海拔高度较高的第五数量的第二区域中,随机选取相邻的第一类型区域和第二类型区域。
作为一种可选的实施方式,根据第二二维网格生成虚拟对象在三维游戏场景中的寻路路线包括:将第二二维网格切分为多个子二维网格;在每个子二维网格中,获取位于第一类型区域中的第三网格单元,得到多个第三网格单元,并获取位于第二类型区域中的第四网格单元,得到多个第四网格单元;在多个第三网格单元和多个第四网格单元中,生成寻路路线。
在该实施例中,在将第一类型区域和第二类型区域进行连通,得到第二二维网格之后,可以将第二二维网格按照目标尺寸进行切分,得到多个子二维网格(Tile网格),该每个子二维网格的尺寸可以相同,目标尺寸可以进行设定。
在每个子二维网格中,获取位于第一类型区域中的第三网格单元,也即,确定有第一类型区域的第三网格单元,得到多个第三网格单元,并获取位于第二类型区域中的第四网格单元,比如,将没有第一类型区域的网格单元确定为第四网格单元,从而得到多个第四网格单元。其中,处于第一类型区域的边界的第三网格单元,和与其距离最近的处于第二类型区域的边界的第三网格单元连通。
可选地,在目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路成功的情况下,可以将多个第三网格单元标记为可以移动,在目标寻路引擎用于辅助虚拟对象在第二类型区域中寻路失败的情况下,可以将多个第四网格单元标记为不可移动。
可选地,该实施例可以先通过多个第三网格单元确定粗略的寻路路线,而尽量使虚拟对象不移动到多个第四网格单元所在的区域。当虚拟对象移动到第四网格单元,或者一开始处于第四网格单元时,比如,第四网格单元为房顶的网格单元,虚拟对象飞到房顶需要下来,或者虚拟对象一开始处于房顶需要下来,由于第四网格单元与多个第三网格单元中的一个第三网格单元已经连通,则可以使用该第四网格单元与多个第三网格单元共同生成寻路路线,可以将第四网格单元的中心点(center)与每个第三网格单元的中心点确定为主干道路径点,通过该主干道路径点生成寻路路线,该实施例可以使用预处理的JPS算法来搜索最短路径,通过以空间换时间方式来提升JPS算法效率。可选地,该实施例使用目标寻路引擎中的Detour工具的A-Star算法来搜索最短路径。
可选地,该实施例在二维超大地形主干道导航网格数据中,地形的任何区域之间都是可以寻路的,包括孤岛区域与孤岛区域之间,孤岛区域与陆地区域之间,从而实现了无缝寻路,通过JPS算法在2D超大地形主干道导航网格数据里面规划最短路径,从而可以得到三维超大地形任何区域之间寻路的寻路路线。
在该实施例中,远距离寻路可以采用预处理的JPS算法来搜索最短路径,近距离寻路可以采用Detour工具的A-Star算法搜索最短路径,通过这样的分层寻路算法可以解决三维超大开放空间里远距离寻路带来的巨大性能消耗问题。同时通过二维超大地形主干道导航网格数据生成孤岛区域之间的连通点,从而最大可能地连接整个三维超大开放空间里的孤岛区域,实现了三维超大开放空间的无缝寻路算法,提高了三维游戏场景中虚拟对象的寻路路线的生成效率。
下面结合优选的实施方式对本发明的技术方案进行说明。
在相关技术中,三维游戏中通常采用开源寻路引擎(Recast&Detour)。其中,Recast工具的功能是将场景网格数据生成用于寻路的三维导航网格数据,Detour工具的功能是通过A-Star算法搜索最短路径。在游戏场景不太的情况下,开源寻路引擎就能满足游戏对于寻路的基本需求。但是,对于三维超大地形的开放世界游戏而言,用开源寻路引擎无法满足其对于寻路的需求。主要的原因在于,三维超大地形非常的复杂,在通过Recast工具生成的三维导航网格数据存在非常的多的孤岛区域。这些孤岛区域对于Detour工具而言都是无法寻路的,但是在游戏世界里面这些地方都是需要寻路的。
存在大量孤岛区域会导致Detour工具寻路失败的概率大大增加,由于一开始无法知道它们是否是连通,只能尝试进行路径搜索,从而降低了搜索有效路径的效率。另外,Detour路径搜索会随着路径距离增大而成倍的增加运算成本,在三维超大地形里面进行远距离寻路就会带来巨大的性能消耗,从而严重影响玩家的游戏体验。
为了解决上述在三维超大开放空间寻路遇到的问题,可以给三维超大开放空间里的孤岛区域铺路点,构建孤岛区域之间的连通图,来满足三维超大开放空间中对于孤岛区域之间需要寻路的需求;还可以采用Recast&Detour开源寻路引擎,通过Detour工具进行路径搜索,同时控制路径搜索的距离范围,来减少远距离寻路带来的性能消耗。
但是,给三维超大开放空间里的孤岛区域铺路点,工作量非常巨大。场景的更新迭代也会导致维护成本非常巨大,整个过程中也会大大提升出问题的几率;通过控制路径搜索距离范围来减少寻路带来性能消耗,但是对于三维超大开放空间而言,远距离寻路是无可避免的,仍然无法通过这种方式来解决寻路的性能消耗过大的问题。
为了解决上述问题,该实施例介绍了生成2D超大地形主干道导航网格数据的方法和基于JPS+Recast&Detour的分层寻路算法。
该实施例通过场景编辑器导出一份需要参与寻路的场景网格数据,如图3所示。其中,图3是根据本发明实施例的一种需要参与寻路的场景网格数据,该场景网格数据是Recast&Detour开源寻路引擎的数据源。
该实施例设置虚拟对象的移动单位参数,其中可以包括虚拟对象的半径、虚拟对象的攀爬高度、虚拟对象的攀爬角度、虚拟对象的跳跃高度等。然后在开源寻路引擎的Recast工具中生成一份贴合三维场景地形的三维导航网格数据,如图4所示。其中,图4是根据本发明实施例的一种三维导航网格数据,这样生成的三维导航网格数据保证搜索得到的路径是贴合场景地形的,真正可以在场景地形中移动的路径。
图5是根据本发明实施例的一种Grid网格的示意图。如图5所示,该Grid网格可以用于获取孤岛区域之间的连通点。获取三维导航网格数据,包括虚拟对象的半径和网格尺寸。通过虚拟对象的半径和网格尺寸生成Grid网格,该Grid网格用于获取孤岛区域之间的连通点。在Grid网格中,可以根据三维导航网格数据中的虚拟对象的最大攀爬高度和最大攀爬角度来判断每个小网格单元的连通属性,通过每个网格单元的连通属性就可以生成大小不一的区域。可以将相同颜色深度值视为同一区域,不同颜色深度值视为不同区域。然后将最大区域尺寸的区域确定为陆地区域(可定义),将其它区域确定为孤岛区域。孤岛区域的边界的网格单元与对应的距离最近的处于陆地区域的边界的网格单元之间连通,通过上述方法可以将整个3D超大开放空间里的孤岛区域连通起来。
图6是根据本发明实施例的一种Tile网格的示意图。如图6所示,该实施例的Tile网格用于预处理JPS算法搜索最短路径。该Tile网格可以是对Grid网格按照一定尺寸进行切分生成的,可以搜索每个网格单元是否存在陆地区域。将有陆地区域的网格单元标记为可以移动的,将没有陆地区域的网格单元标记为不可以移动的。然后获取Tile网格里标记可移动的每个网格单元的中心点,将其作为主干道路径点。这样处理后的Tile网格将用于用预处理的JPS算法搜索最短路径。到此完全生成一个俯视角的2D超大地形主干道导航网格数据(图5和图6)。
该实施例可以先通过标记可移动的网格单元确定粗略的寻路路线,而尽量使虚拟对象不移动到未标记可移动的网格单元所在的区域。当虚拟对象移动到未标记可移动的网格单元,或者一开始处于未标记可移动的网格单元时,比如,未标记可移动的网格单元为房顶的网格单元,虚拟对象飞到房顶需要下来,或者虚拟对象一开始处于房顶需要下来,由于未标记可移动的网格单元与多个标记可移动的网格单元中的一个标记可移动的网格单元已经连通,则可以使用该未标记可移动的网格单元与多个标记可移动的网格单元共同生成寻路路线,可以将未标记可移动的网格单元的中心点)与每个标记可移动的网格单元的中心点确定为主干道路径点,通过该主干道路径点生成寻路路线,该实施例可以使用预处理的JPS算法来搜索最短路径,通过以空间换时间方式来提升JPS算法效率。可选地,该实施例使用目标寻路引擎中的Detour工具的A-Star算法来搜索最短路径。
在该实施例中,预处理的JPS算法对于远距离寻路非常友好,带来开销非常的低.。远距离寻路采用预处理的JPS算法,在二维超大地形主干道导航网格数据里面规划最短路径,同时孤岛区域之间也可以通过二维超大地形主干道导航网格直接获取连通点,结合二者就可以得到3D超大地形任何区域之间寻路的导航路线;通过导航路线生成路点,再借助开源寻路引擎Detour工具驱动游戏里的单位在3D地形中移动。
该实施例通过改造JPS的分层寻路算法,以空间换时间的方式来提升JPS算法效率,通过预处理JPS算法搜索最短路径;加载二维超大地形主干道导航网格数据,为网格里面的每个网格单元生成对应周围八个方向的跳点,这样就不用在路径搜索的过程中去生成对应方向的跳点;对于远距离寻路采用预处理的JPS算法搜索最短路径;近距离寻路利用Detour工具的A-Star算法搜索跳点的方式,搜索最短路径,这样的分层寻路算法来解决3D超大开放空间里远距离寻路带来的巨大性能消耗问题。
该实施例通过开源寻路引擎Recast&Detour的Recast工具生成一份三维导航网格数据,用Detour工具的A-Star算法搜索最短路径。用预处理的方式改造JPS算法,以空间换时间方式提升JPS算法效率,然后生成一个俯视角的2D超大地形主干道导航网格数据;其中,远距离寻路采用预处理的JPS算法搜索最短路径,近距离寻路采用Detour工具的A-Star算法搜索最短路径,通过这样的分层寻路算法来解决三维超大开放空间里远距离寻路带来的巨大性能消耗的问题;同时二维超大地形主干道导航网格数据也会生成孤岛区域之间的连通点,最大可能地连接整个三维超大开放空间里的孤岛区域,从而实现三维超大开放空间的无缝寻路算法。
该实施例对于三维超大地形真正实现了无缝寻路,地形的任何区域之间都是可以寻路的;对于三维超大地形的开放世界的虚拟对象的远距离寻路,可以带来非常大的性能提升;对于游戏里面的虚拟对象在孤岛区域的地方,可以做出更好的寻路决策,从而提高了虚拟对象在三维超大开放空间中的寻路路线的生成效率。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明实施例还提供了一种三维游戏场景的路线生成装置。需要说明的是,该实施例的三维游戏场景的路线生成装置可以用于执行本发明实施例的三维游戏场景的路线生成方法。
图7是根据本发明实施例的一种三维游戏场景的路线生成装置的示意图。如图7所示,该三维游戏场景的路线生成装置700包括:处理单元10、确定单元20、连通单元30和生成单元40。
处理单元10,用于通过目标寻路引擎对三维游戏场景的地形进行处理,得到三维导航网格数据,并将三维导航网格数据转化为第一二维网格。
确定单元20,用于确定第一二维网格中的第一类型区域和第二类型区域,其中,目标寻路引擎用于辅助虚拟对象在第一类型区域中寻路成功或失败,并辅助虚拟对象在第二类型区域中寻路失败,第一类型区域和第二类型区域为虚拟对象在三维游戏场景可寻路的区域。
连通单元30,用于将第一类型区域和第二类型区域进行连通,得到第二二维网格。
生成单元40,用于根据第二二维网格生成虚拟对象在三维游戏场景中的寻路路线。
该实施例将三维游戏场景的地形的三维导航网格数据转化为二维网格,在二维网格中确定出可以被目标寻路引擎寻路成功或失败的第一类型区域和寻路失败的第二类型区域,将其连通起来,从而使得虚拟对象可以从第一类型区域到第二类型区域进行寻路,避免了虚拟对象无法在通过目标寻路引擎寻路失败的第二类型区域中进行寻路,解决了三维游戏场景中虚拟对象的寻路路线的生成效率低的技术问题,达到了提高三维游戏场景中虚拟对象进行寻路的路线生成效率的技术效果。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种三维游戏场景的路线生成方法,其特征在于,包括:
通过目标寻路引擎对三维游戏场景的地形进行处理,得到三维导航网格数据,并将所述三维导航网格数据转化为第一二维网格;
确定所述第一二维网格中的第一类型区域和第二类型区域,其中,所述目标寻路引擎用于辅助虚拟对象在所述第一类型区域中寻路成功,或用于辅助所述虚拟对象从所述第一类型区域寻路至除所述第一类型区域之外的区域失败,并辅助所述虚拟对象从所述第二类型区域寻路至除所述第二类型区域之外的区域失败,所述第一类型区域和所述第二类型区域为所述虚拟对象在所述三维游戏场景可寻路的区域;
将所述第一类型区域和第二类型区域进行连通,得到第二二维网格;
根据所述第二二维网格生成所述虚拟对象在所述三维游戏场景中的寻路路线。
2.根据权利要求1所述的方法,其特征在于,将所述第一类型区域和第二类型区域进行连通,得到第二二维网格包括:
获取所述第一类型区域中的第一网格单元,其中,所述第一网格单元位于所述第一类型区域的边界;
在所述第二类型区域的边界上,获取与所述第一网格单元距离最近的第二网格单元;
将所述第一网格单元与对应的所述第二网格单元进行连通,得到所述第二二维网格。
3.根据权利要求2所述的方法,其特征在于,将所述第一网格单元与对应的所述第二网格单元进行连通,得到所述第二二维网格包括以下至少之一:
将所述第一网格单元的信息记录在对应的所述第二网格单元中;
将所述第二网格单元的信息记录在对应的每个所述第一网格单元。
4.根据权利要求3所述的方法,其特征在于,确定所述第一二维网格中的第一类型区域包括:
通过每个所述网格单元的连通属性,确定所述第一二维网格的第一数量的第一区域,其中,所述第一区域中的每相邻两个所述网格单元处于连通状态;
在所述第一数量的所述第一区域中,将具有相同标识信息的多个所述第一区域,合并为一个第二区域,得到第二数量的所述第二区域;
从所述第二数量的所述第二区域中,选取所述第一类型区域和所述第二类型区域。
5.根据权利要求4所述的方法,其特征在于,在所述目标寻路引擎用于辅助虚拟对象在所述第一类型区域中寻路成功的情况下,选取所述第一类型区域包括以下之一:
将区域尺寸大于第一阈值的所述第二区域,确定为所述第一类型区域;
将区域表面平坦度大于第二阈值的所述第二区域,确定为所述第一类型区域;
将与所述三维游戏场景的水平面之间的距离小于第三阈值的所述第二区域,确定为所述第一类型区域;
将目标指令所指示的所述第二区域,确定为所述第一类型区域。
6.根据权利要求5所述的方法,其特征在于,选取所述第二类型区域包括:
在所述第二数量的所述第二区域中,将除所述第一类型区域之外的每个所述第二区域,确定为所述第二类型区域。
7.根据权利要求4所述的方法,其特征在于,在所述目标寻路引擎用于辅助虚拟对象在所述第一类型区域中寻路失败的情况下,选取所述第一类型区域和所述第二类型区域包括以下之一:
从区域尺寸不大于第一阈值的第三数量的所述第二区域中,选取所述第一类型区域和所述第二类型区域;
从区域表面平坦度不大于第二阈值的第四数量的所述第二区域中,选取所述第一类型区域和所述第二类型区域;
从与所述三维游戏场景的水平面之间的距离不小于第三阈值的第五数量的所述第二区域中,选取所述第一类型区域和所述第二类型区域;
响应目标指令,选取所述第一类型区域和所述第二类型区域。
8.根据权利要求1所述的方法,其特征在于,根据所述第二二维网格生成所述虚拟对象在所述三维游戏场景中的寻路路线包括:
将所述第二二维网格切分为多个子二维网格;
在每个所述子二维网格中,获取位于所述第一类型区域中的第三网格单元,得到多个所述第三网格单元,并获取位于所述第二类型区域中的第四网格单元,得到多个所述第四网格单元;
在多个所述第三网格单元和多个所述第四网格单元中,生成所述寻路路线。
9.根据权利要求1至8中任意一项所述的方法,其特征在于,所述第一类型区域和所述第二类型区域相邻。
10.一种三维游戏场景的路线生成装置,其特征在于,包括:
处理单元,用于通过目标寻路引擎对三维游戏场景的地形进行处理,得到三维导航网格数据,并将所述三维导航网格数据转化为第一二维网格;
确定单元,用于确定所述第一二维网格中的第一类型区域和第二类型区域,其中,所述目标寻路引擎用于辅助虚拟对象在所述第一类型区域中寻路成功,或用于辅助所述虚拟对象从所述第一类型区域寻路至除所述第一类型区域之外的区域失败,并辅助所述虚拟对象从所述第二类型区域中寻路至除所述第二类型区域之外的区域失败,所述第一类型区域和所述第二类型区域为所述虚拟对象在所述三维游戏场景可寻路的区域;
连通单元,用于将所述第一类型区域和第二类型区域进行连通,得到第二二维网格;
生成单元,用于根据所述第二二维网格生成所述虚拟对象在所述三维游戏场景中的寻路路线。
11.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至9任一项中所述的方法。
12.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至9任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911071532.3A CN110772791B (zh) | 2019-11-05 | 2019-11-05 | 三维游戏场景的路线生成方法、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911071532.3A CN110772791B (zh) | 2019-11-05 | 2019-11-05 | 三维游戏场景的路线生成方法、装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110772791A CN110772791A (zh) | 2020-02-11 |
CN110772791B true CN110772791B (zh) | 2023-07-21 |
Family
ID=69389194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911071532.3A Active CN110772791B (zh) | 2019-11-05 | 2019-11-05 | 三维游戏场景的路线生成方法、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110772791B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111760268B (zh) * | 2020-07-06 | 2021-06-08 | 网易(杭州)网络有限公司 | 一种游戏中的寻路控制方法及装置 |
CN112090078B (zh) * | 2020-08-13 | 2021-10-15 | 深圳中清龙图网络技术有限公司 | 游戏角色移动控制方法、装置、设备和介质 |
CN111921192B (zh) * | 2020-08-31 | 2024-02-23 | 网易(杭州)网络有限公司 | 虚拟对象的控制方法和装置 |
CN113521741B (zh) * | 2020-10-23 | 2024-02-23 | 腾讯科技(深圳)有限公司 | 自动生成地图区域链接的方法、装置、设备及存储介质 |
CN112221144B (zh) * | 2020-11-03 | 2024-03-15 | 网易(杭州)网络有限公司 | 三维场景寻路方法及装置、三维场景地图处理方法及装置 |
CN112494937A (zh) * | 2020-12-16 | 2021-03-16 | 北京冰封互娱科技有限公司 | 一种游戏场景搭建方法及装置、存储介质、计算设备 |
CN112669466B (zh) * | 2020-12-23 | 2024-09-27 | 北京像素软件科技股份有限公司 | 虚拟空间路径规划方法、装置、电子设备及存储介质 |
CN112862935B (zh) * | 2021-03-16 | 2023-03-17 | 天津亚克互动科技有限公司 | 游戏角色的运动处理方法及装置、存储介质、计算机设备 |
CN113144607B (zh) * | 2021-04-21 | 2024-07-09 | 网易(杭州)网络有限公司 | 游戏中虚拟对象的寻路方法、装置及电子设备 |
CN113413601B (zh) * | 2021-07-16 | 2024-01-02 | 上海幻电信息科技有限公司 | 寻路方法及装置 |
CN115445200A (zh) * | 2022-09-19 | 2022-12-09 | 上海米哈游天命科技有限公司 | 返回点的生成方法及装置 |
CN115414670A (zh) * | 2022-09-19 | 2022-12-02 | 上海米哈游天命科技有限公司 | 导航网格的链接方法及装置 |
CN117224951B (zh) * | 2023-11-02 | 2024-05-28 | 深圳市洲禹科技有限公司 | 基于感知的行人行为预测方法、装置及电子设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000350865A (ja) * | 1999-06-11 | 2000-12-19 | Mr System Kenkyusho:Kk | 複合現実空間のゲーム装置、その画像処理方法およびプログラム記憶媒体 |
US20070198178A1 (en) * | 2004-03-31 | 2007-08-23 | Trimby Martin W | Pathfinding system |
JP2010068872A (ja) * | 2008-09-16 | 2010-04-02 | Namco Bandai Games Inc | プログラム、情報記憶媒体及びゲーム装置 |
CN102682466B (zh) * | 2011-03-17 | 2016-02-24 | 腾讯科技(深圳)有限公司 | 三维角色扮演游戏中实现动态阻挡的方法、装置及系统 |
CN103198234A (zh) * | 2013-04-25 | 2013-07-10 | 腾讯科技(深圳)有限公司 | 一种寻路方法和装置 |
WO2018130135A1 (zh) * | 2017-01-13 | 2018-07-19 | 腾讯科技(深圳)有限公司 | 一种控制模拟对象寻路的方法、装置及服务器 |
CN110193198B (zh) * | 2019-05-23 | 2023-02-10 | 腾讯科技(深圳)有限公司 | 对象跳跃控制方法、装置、计算机设备及存储介质 |
-
2019
- 2019-11-05 CN CN201911071532.3A patent/CN110772791B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110772791A (zh) | 2020-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110772791B (zh) | 三维游戏场景的路线生成方法、装置和存储介质 | |
CN101241507B (zh) | 一种地图寻路方法及系统 | |
CN106371445B (zh) | 一种基于拓扑地图的无人车规划控制方法 | |
CN105841702A (zh) | 一种基于粒子群优化算法的多无人机航路规划方法 | |
CN110579214B (zh) | 无人机路径规划方法和装置 | |
CN108268971B (zh) | 路径的搜索方法、装置、处理器和电子装置 | |
CN105043379A (zh) | 一种基于时空约束的景区浏览路径规划方法、装置 | |
CN102435200A (zh) | 一种路径快速规划方法 | |
CN112166394A (zh) | 一种航线规划方法、设备、系统及存储介质 | |
CN112462763A (zh) | 一种基于栅格地图的割草机器人路径规划方法 | |
CN109341698B (zh) | 一种移动机器人的路径选择方法及装置 | |
CN112833904A (zh) | 一种基于自由空间与快速搜索随机树算法的无人车动态路径规划方法 | |
CN114625162A (zh) | 基于混合算法的无人机最优路径规划方法、系统及介质 | |
CN114690769B (zh) | 路径规划方法、电子设备及存储介质、计算机程序产品 | |
CN111427341B (zh) | 一种基于概率地图的机器人最短预期时间目标搜索方法 | |
CN115981305A (zh) | 机器人的路径规划和控制方法、装置及机器人 | |
KR101376687B1 (ko) | 쿼드트리를 활용한 격자지도 기반의 지형분석 방법 | |
CN114779770A (zh) | 全局路径规划控制方法、装置、设备、介质及程序产品 | |
CN114343490A (zh) | 机器人清扫方法、机器人及存储介质 | |
Lee | An efficient coverage area re-assignment strategy for multi-robot long-term surveillance | |
CN113485378A (zh) | 基于交通规则的移动机器人路径规划方法、系统及存储介质 | |
Flint et al. | Stochastic models of a cooperative autonomous uav search problem | |
Zhao et al. | Temporal and spatial routing for large scale safe and connected uas traffic management in urban areas | |
Batsoyol et al. | Constructing full-coverage 3D UAV ad-hoc networks through collaborative exploration in unknown urban environments | |
CN116772846A (zh) | 一种无人机航迹规划方法、装置、设备及介质 |
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 |