非暂态计算机可读介质和视频游戏处理系统的制作方法

文档序号:24158658发布日期:2021-03-05 13:48阅读:107来源:国知局
非暂态计算机可读介质和视频游戏处理系统的制作方法

[0001]
本发明的实施例中的至少一个涉及包括有视频游戏处理程序的非暂态计算机可读介质(non-transitory computer-readable medium)和视频游戏处理系统,用于使服务器实现有关虚拟空间中的移动路径的搜索(search)的功能。


背景技术:

[0002]
迄今为止,已提出了各种用于在视频游戏中移动角色的技术。
[0003]
在这样的技术中,存在一种通过使用与构成视频游戏的虚拟空间有关的位置信息来搜索角色的移动路径的技术,并且这样的技术利用导航网格(navigation mesh)和路点(waypoints)。为了抑制搜索移动路径所需的处理负荷的增加,存在一种确定搜索区域中的路径候选位置的布置的方案,使布置在搜索区域的预定范围外的路径候选位置之间的间隔大于布置在搜索区域的预定范围内的路径候选位置的间隔(参照jp2012-213485a;以下称为“专利文献1”)。
[0004]
然而,在现有技术中,随着成为搜索目标的路点(路径候选位置)的数量增加,路点的布置和针对所布置的路点的路径搜索所需的处理负荷增加。由于这个原因,当控制可以在虚拟空间中移动的诸如角色的对象的移动时,处理负荷可能会过大。


技术实现要素:

[0005]
本发明的目的在于提供一种包含有视频游戏处理程序的非暂态计算机可读介质和视频游戏处理系统,以解决上述问题,并减轻对象的移动路径的搜索所需的处理负荷。
[0006]
根据本发明的一个非限制性方面,提供一种非暂态计算机可读介质,包含有视频游戏处理程序,该视频游戏处理程序用于使服务器实现有关在虚拟空间中搜索移动路径的功能。
[0007]
所述功能包括:设定功能,配置为设定与虚拟空间中的对象的可移动范围对应的导航网格。
[0008]
所述功能还包括:布置功能,配置为根据预定的布置规则而在所设定的导航网格上布置多个路点。
[0009]
所述功能还包括:削减功能,配置为从所布置的多个路点中削减根据预定的选择规则而选择的一些路点。
[0010]
所述功能还包括:搜索功能,配置为基于削减后的多个路点的布置来搜索对象的移动路径。
[0011]
根据本发明的另一个非限制性方面,提供一种视频游戏处理系统,用于执行有关在虚拟空间中搜索移动路径的处理。在这种情况下,视频游戏处理系统包括有通信网络、服务器以及用户终端。
[0012]
所述视频游戏处理系统包括:设定单元,其配置为设定与虚拟空间中的对象的可移动范围对应的导航网格。
[0013]
所述视频游戏处理系统还包括:布置单元,其配置为根据预定的布置规则而在所设定的导航网格上布置多个路点。
[0014]
所述视频游戏处理系统还包括:削减单元,其配置为从所布置的多个路点中削减根据预定的选择规则而选择的一些路点。
[0015]
所述视频游戏处理系统还包括:搜索单元,其配置为基于削减后的多个路点的布置来搜索对象的移动路径。
[0016]
根据本发明的又一个非限制性方面,提供一种非暂态计算机可读介质,包含有视频游戏处理程序,该视频游戏处理程序用于使用户终端实现有关在虚拟空间中搜索移动路径的功能。
[0017]
所述功能包括:设定功能,配置为设定与虚拟空间中的对象的可移动范围对应的导航网格。
[0018]
所述功能还包括:布置功能,配置为根据预定的布置规则而在所设定的导航网格上布置多个路点。
[0019]
所述功能还包括:削减功能,配置为从所布置的多个路点中削减根据预定的选择规则而选择的一些路点。
[0020]
所述功能还包括:搜索功能,配置为基于削减后的多个路点的布置来搜索对象的移动路径。
[0021]
根据本申请的各实施例,解决了一个或两个以上的不足。
[0022]
通过以下参照附图对本发明的优选实施例的详细说明,本发明的前述及其它目的、特征和优点将变得更清晰。
附图说明
[0023]
图1是示出与本发明的实施例中的至少一个对应的视频游戏处理系统的配置的示例的框图;
[0024]
图2是示出与本发明的实施例中的至少一个对应的服务器的配置的框图;
[0025]
图3是示出与本发明的实施例中的至少一个对应的游戏处理的示例的流程图;
[0026]
图4是示出与本发明的实施例中的至少一个对应的游戏处理中的服务器侧的动作的示例的流程图;
[0027]
图5是示出与本发明的实施例中的至少一个对应的游戏处理中的终端侧的动作的示例的流程图;
[0028]
图6是示出与本发明的实施例中的至少一个对应的服务器的配置的框图;
[0029]
图7是示出与本发明的实施例中的至少一个对应的游戏处理的示例的流程图;
[0030]
图8是示出与本发明的实施例中的至少一个对应的服务器的配置的框图;
[0031]
图9是示出与本发明的实施例中的至少一个对应的游戏处理的示例的流程图;
[0032]
图10是示出与本发明的实施例中的至少一个对应的服务器的配置的框图;
[0033]
图11是示出与本发明的实施例中的至少一个对应的游戏处理的示例的流程图;
[0034]
图12是示出与本发明的实施例中的至少一个对应的服务器的配置的框图;
[0035]
图13是用于说明与本发明的实施例中的至少一个对应的路点的削减的示例的说明图;
[0036]
图14是用于说明与本发明的实施例中的至少一个对应的不应削减的路点的示例的说明图;
[0037]
图15是用于说明与本发明的实施例中的至少一个对应的生成区域的方法的示例的说明图;
[0038]
图16是用于说明与本发明的实施例中的至少一个对应的信息的存储状态的示例的说明图;以及
[0039]
图17是示出与本发明的实施例中的至少一个对应的游戏处理的示例的流程图。
具体实施方式
[0040]
以下将参照附图说明根据本发明的实施例的示例。注意的是,以下说明的各实施例中的各种构成要素在无任何矛盾等的情况下可适当组合。另外,在某一实施例中已说明的内容可以在另一个实施例中省略。此外,可以省略与各实施例的特征部分无关的动作或处理的内容。此外,构成以下说明的各种流程的各种处理的顺序可以在处理内容没有任何矛盾等的情况下改变。
[0041]
[第一实施例]
[0042]
图1是示出根据本发明的一个实施例的视频游戏处理系统100的配置的示例的框图。如图1所示,视频游戏处理系统100包括有视频游戏处理服务器10(以下称为“服务器10”)和由视频游戏处理系统100的用户分别使用的用户终端20、201~20n(“n”是任意的整数)。在这一点上,视频游戏处理系统100的配置不限于该配置。视频游戏处理系统100可以配置为多个用户使用单个的用户终端,或者可以配置为包括多个服务器。
[0043]
服务器10和多个用户终端20、201~20n中的每一个连接于诸如英特网的通信网络30。在这一点上,尽管在附图中没有示出,但是多个用户终端20、201~20n通过利用无线通信线路执行与由通信运营商管理的基站的数据通信来连接于通信网络30。
[0044]
视频游戏处理系统100包括服务器10和多个用户终端20、201~20n,从而实现用于响应用户的操作而执行各种处理的各种功能。
[0045]
服务器10由视频游戏处理系统100的管理者管理,并且具有向多个用户终端20、201~20n提供与各种处理有关的信息的各种功能。在本实施例中,服务器10由诸如www服务器的信息处理装置构成,并且服务器10包括用于存储各种信息的存储介质。在这一点上,服务器10具有像计算机一样的执行各种处理的一般配置,诸如控制部和通信部。但在此省略其说明。此外,在视频游戏处理系统100中,优选地,从减轻多个用户终端20、201~20n中的每一个的处理负荷的观点看,各种信息由服务器10管理。然而,用于存储各种信息的存储部可以包括有存储区且处在服务器10能够访问存储区的状态。例如,服务器10可以配置为设置有在服务器10的外部的专用的存储区。
[0046]
图2是示出视频游戏处理服务器10a(以下称为“服务器10a”)的配置的框图,其为视频游戏处理服务器10的示例。如图2所示,服务器10a至少包括有设定单元11、布置单元12、削减单元13以及搜索单元14。
[0047]
设定单元11具有设定与虚拟空间中的对象的可移动范围对应的导航网格的功能。
[0048]
在此,对象是指可以布置在虚拟空间中的对象。对象的配置没有特别限制。然而,优选地,对象可以被用户终端20的用户(或玩家)识别。作为对象的示例,包括用户能操作的
角色(例如,玩家角色)和用户不能操作的角色(例如,非玩家角色)。
[0049]
此外,可移动范围是指允许对象在虚拟空间中移动的范围。可移动范围的配置没有特别限制。可移动范围可以由2d地图配置,或者可以由3d地图配置。
[0050]
此外,短语“设定与可移动范围对应的导航网格”是指导航网格与虚拟空间中的可移动范围相关联。设定导航网格的配置没有特别限制。例如,存在有一配置,在该配置中,对从玩家的初始位置连续的各多边形设定可通行标志。
[0051]
布置单元12具有根据预定的布置规则而在所设定的导航网格上布置多个路点的功能。
[0052]
在此,每个路点是指能够与有关视频游戏的信息相关联的地点信息(spot information)。即,每个路点具有作为嵌入视频游戏所必要的信息的基础(base)的作用。每个路点的配置没有特别限制,只要每个路点可以指定导航网格上的位置即可。然而,优选地,每个路点配置为可以将路点与根据路径搜索的目的而能够有用的信息相关联。作为这样的配置的示例,存在有一配置,在该配置中,包括在3d空间中的xyz位置和在路点下的导航网格多边形id。
[0053]
此外,根据预定的布置规则布置多个路点的配置没有特别限制。布置单元12可以配置为不同地使用多个布置规则。作为布置规则的示例,包括基于玩家的初始位置而通过洪水填充算法(floodfill)布置路点的规则。
[0054]
削减(thinning)单元13具有从所布置的多个路点中削减(thin out)根据预定的选择规则而选择的一些路点的功能。
[0055]
在此,根据预定的选择规则选择一些路点的配置没有特别限制。削减单元13可以配置为以随机的方式选择一些路点。作为这样的配置的示例,存在有一配置,在该配置中,根据通过使用随机数提供随机性的规则来从所布置的路点中选择预定比例的路点。
[0056]
此外,短语“削减一些路点”是指将一些路点从路径搜索的目标中排除。削减一些路点的配置没有特别限制。削减单元13可以配置为删除信息,或者可以配置为留下信息并且记录信息未被设定为路径搜索的目标的事实。
[0057]
搜索单元14具有基于削减一些路点之后的多个路点的布置来搜索对象的移动路径的功能。
[0058]
在此,短语“搜索对象的移动路径”是指通过将多个路点彼此连接来定义对象移动的路径。搜索移动路径的配置没有特别限制。然而,优选地,搜索单元14配置为能够搜索满足搜索条件的一个路径或多个路径。作为这样的配置的示例,存在有一配置,在该配置中,采用通过将每个路点用作节点的公知的路径搜索技术。
[0059]
多个用户终端20、201~20n中的每一个由用户管理,并且例如由诸如蜂窝电话终端、pda(个人数字助理)、便携式游戏装置或所谓的可穿戴设备的能够进行网络传送型游戏的通信终端来配置。在这一点上,视频游戏处理系统100可包括的用户终端的配置不限于上述示例。用户终端20、201~20n中的每一个可以配置为用户能够识别视频游戏。作为用户终端的其他示例,存在有通过组合各种通信终端而获取的构成、个人计算机和固定式游戏装置。
[0060]
此外,多个用户终端20、201~20n中的每一个连接于通信网络30,并且包括用于通过与服务器10a通信而执行各种处理的硬件(例如,用于显示基于坐标的浏览器画面或游戏
画面的显示装置等)和软件。在这一点上,多个用户终端20、201~20n中的每一个可以配置为能够彼此直接通信而无需通过服务器10a。
[0061]
接下来,将说明根据本实施例的视频游戏处理系统100(以下称为“系统100”)的动作。
[0062]
图3是示出由系统100执行的游戏处理的示例的流程图。在根据本实施例的游戏处理中,执行与控制视频游戏的进程有关的处理。以下,将以服务器10a和用户终端20(以下称为“终端20”)执行游戏处理的情况为例进行说明。
[0063]
例如,在访问服务器10a的终端20满足路点的布置条件的情况下,开始游戏处理。以下,将以操作终端20的用户输入对移动路径的搜索请求的情况为例进行说明。
[0064]
在游戏处理中,服务器10a首先设定导航网格(步骤s11)。在本实施例中,服务器10a指定要提供给终端20的虚拟空间,并且设定与对象在指定的虚拟空间中可移动的范围对应的导航网格。
[0065]
在设定导航网格后,服务器10a布置路点(步骤s12)。在本实施例中,服务器10a根据预定的布置规则而在所设定的导航网格上布置多个路点。
[0066]
在布置路点后,服务器10a削减一些路点(步骤s13)。在本实施例中,服务器10a从所布置的多个路点中削减根据预定的选择规则而选择的一些路点。
[0067]
在将路点削减后,服务器10a搜索移动路径(步骤s14)。在本实施例中,服务器10a基于布置在虚拟空间中的多个路点的布置来搜索对象的移动路径。
[0068]
图4是示出游戏处理中的服务器10a侧的动作的示例的流程图。在此,将再次说明系统100中的服务器10a的动作。
[0069]
在游戏处理中,服务器10a首先设定导航网格(步骤s101);在所设定的导航网格上布置路点(步骤s102);从所布置的多个路点中削减一些路点(步骤s103);以及在削减一些路点之后,基于在虚拟空间中剩余的路点的布置来搜索移动路径(步骤s104)。
[0070]
图5是示出在终端20执行游戏处理的情况下终端20侧的动作的示例的流程图。以下,将以终端20单独执行游戏处理的情况为例进行说明。在这一点上,除了终端20从服务器10接收各种信息以外,终端20的配置包括有与服务器10的功能相同的功能。由于这个原因,从避免重复说明的角度省略其说明。
[0071]
在游戏处理中,终端20首先设定导航网格(步骤s201);在所设定的导航网格上布置路点(步骤s202);从所布置的多个路点中削减一些路点(步骤s203);以及在削减一些路点之后,基于在虚拟空间中剩余的路点的布置来搜索移动路径(步骤s204)。在本实施例中,终端20与服务器10a进行通信以获取在每个步骤中使用的信息。在这一点上,终端20可以配置为参考终端20中所包括的存储单元来指定在每个步骤中使用的信息。
[0072]
如上所述,作为第一实施例的一个方面,具有有关在虚拟空间中搜索移动路径的功能的服务器10a配置为包括有设定单元11、布置单元12、削减单元13以及搜索单元14。因此,设定单元11设定与虚拟空间中的对象的可移动范围对应的导航网格;布置单元12根据预定的布置规则而在所设定的导航网格上布置多个路点;削减单元13从所布置的多个路点中削减根据预定的选择规则而选择的一些路点;以及搜索单元14基于削减一些路点之后的多个路点的布置来搜索对象的移动路径。因此,可以减轻搜索对象的移动路径所需的处理负荷。
[0073]
即,不仅通过布置路点且通过在布置路点之后削减一些路点来减少搜索的信息量。因此,可以减轻搜索对象的移动路径所需的处理负荷。
[0074]
在这一点上,虽然在上述第一实施例中没有特别提及,但是,服务器10a通过设定单元11、布置单元12和削减单元13执行各处理的时机没有特别限制。服务器10a可以配置为在开发视频游戏时或在进行视频游戏时执行处理。即,服务器10a可以配置为搜索单元14读取在玩家进行视频游戏之前生成的信息;根据视频游戏的状况更新所读取的信息;以及搜索移动路径。此外,服务器10a可以配置为搜索单元14通过使用根据视频游戏的进程而实时生成的信息(例如,路点的布置和所生成的区域)来搜索移动路径。
[0075]
[第二实施例]
[0076]
图6是示出视频游戏处理服务器10b(以下称为“服务器10b”)的配置的框图,其为视频游戏处理服务器10(参照图1)的示例。在本实施例中,服务器10b至少包括有设定单元11、布置单元12、削减单元13b以及搜索单元14。
[0077]
削减单元13b具有参考预定的存储单元(附图中未示出)的功能,在存储单元中将多个路点中的每一个与其他路点之间的连接的信息和与视频游戏有关的信息存储为彼此相关联,并在所选择的路点满足预定的禁止条件的情况下,不削减所选择的路点。
[0078]
在此,禁止条件的内容没有特别限制。然而,优选地,禁止条件具有表示对于路点的如果削减该路点则导致路径搜索的障碍的内容。作为这样的内容的示例,存在有在路点削减后使削减后的距离变得太宽的路点。
[0079]
此外,不削减所选择的路点的配置没有特别限制。然而,优选地,在同一处理中不选择确定为不削减的路点。作为这样的配置的示例,存在有一配置,在该配置中,削减单元13b配置为对在选择之后的确定中确定不削减的路点设定识别信息。
[0080]
图7是示出由视频游戏处理系统100(参照图1)执行的游戏处理的示例的流程图。以下,将以服务器10b和用户终端20(以下称为“终端20”)的动作为例进行说明。在这一点上,从避免重复说明的角度省略示出服务器10b和终端20中的每一个的动作的流程图。
[0081]
在游戏处理中,当布置路点后,服务器10b削减一些路点(步骤s2-11)。然而,服务器10b不削减满足禁止条件的每个路点。在本实施例中,服务器10b参考预定的信息来确定选择为削减目标的每个路点是否满足禁止条件,并且从削减目标中排除满足禁止条件的每个路点。
[0082]
如上所述,作为第二实施例的一个方面,服务器10b配置为包括有设定单元11、布置单元12、削减单元13b以及搜索单元14。因此,削减单元13b参考预定的存储单元,在预定的存储单元中将多个路点的每一个与其他路点之间的连接的信息和与视频游戏有关的信息存储为彼此关联,并在所选择的路点满足预定的禁止条件的情况下,不削减所选择的路点。因此,可以防止应留下的用于搜索移动路径的路点被削减。此外,与在削减之前从所有路点中确定不排除的路点的情况相比,通过将作为确定目标的路点限制于“选择为削减目标的路点”,相应于此而可以减轻处理负荷。
[0083]
[第三实施例]
[0084]
图8是示出视频游戏处理服务器10c(以下称为“服务器10c”)的配置的框图,其为视频游戏处理服务器10(参照图1)的示例。在本实施例中,服务器10c至少包括设定单元11、布置单元12、削减单元13、搜索单元14c、生成单元15以及确定单元16。
[0085]
生成单元15具有通过根据预定的分类规则对布置在虚拟空间中的多个路点进行分组来生成多个区域的功能。
[0086]
在此,根据预定的分类规则对路点分组的配置没有特别限制。生成单元15可以配置为基于路点的布置对路点进行分类,或者可以配置为基于与路点相关联的信息对路点进行分类。作为这样的配置的示例,存在有一配置,在该配置中,将每个路点和不可移动区域(例如,壁)之间的距离通过分水岭(watershed)算法来进行分类(或者导航网格由分类之后的各路点的布置来分割)。
[0087]
此外,短语“通过分组来生成多个区域”是指将属于一组的路点所处的虚拟空间(或者所设定的导航网格)中的范围定义为区域。生成多个区域的配置没有特别限制。生成单元15可以配置为将表示属于一组的一组路点的信息作为区域而生成,或者可以配置为从属于一组的路点的布置中将表示导航网格的一部分的信息作为区域而生成。
[0088]
确定单元16具有基于所生成的多个区域的布置来确定允许对象在其中移动的区域(以下称为“可移动区域”)的功能。
[0089]
在此,确定可移动区域的配置没有特别限制。确定单元16可以配置为能够将包括有移动开始位置的区域连结于包括有移动结束位置的区域的多个区域确定为可移动区域。作为这样的配置的示例,存在有一配置,在该配置中,通过将各区域用作节点来利用公知的路径搜索技术。在这一点上,确定单元16可以配置为通过使用与位于区域的边界上的路点相关联的信息来确定各区域的连接关系。
[0090]
搜索单元14c具有基于确定的可移动区域中所包括的路点来搜索对象的移动路径的功能。
[0091]
在此,基于可移动区域中包括的路点来搜索移动路径的配置没有特别限制。然而,优选地,搜索单元14c配置为能够搜索满足搜索条件的一个路径或多个路径。作为这样的配置的示例,存在有一配置,在该配置中,通过将可移动区域中所包括的各路点用作节点来利用公知的路径搜索技术。
[0092]
图9是示出由视频游戏处理系统100(参照图1)执行的游戏处理的示例的流程图。以下,将以服务器10c和用户终端20(以下称为“终端20”)的动作为例进行说明。在这一点上,从避免重复说明的角度省略示出服务器10c和终端20中的每一个的动作的流程图。
[0093]
在削减一些路点后,服务器10c生成多个区域(步骤s3-11)。在本实施例中,服务器10c通过根据预定的分类规则对布置在虚拟空间中的多个路点进行分组来生成多个区域。
[0094]
在生成多个区域后,服务器10c确定可移动区域(步骤s3-12)。在本实施例中,服务器10c基于所生成的多个区域的布置来确定适合从包括有移动开始位置的区域到包括有移动结束位置的区域的移动的可移动区域。
[0095]
在确定可移动区域后,服务器10c基于可移动区域中包括的路点来搜索移动路径(步骤s3-13)。在本实施例中,服务器10c基于在所确定的可移动区域中所包括的路点来搜索从移动开始位置到移动结束位置的移动路径。
[0096]
如上所述,作为第三实施例的一个方面,服务器10c配置为包括有设定单元11、布置单元12、削减单元13、搜索单元14c、生成单元15以及确定单元16。因此,生成单元15通过根据预定的分类规则对布置在虚拟空间中的多个路点进行分组来生成多个区域;确定单元16基于所生成的多个区域的布置来确定允许对象移动的区域(即可移动区域);以及搜索单
元14c基于在所确定的可移动区域中所包括的路点来搜索对象的移动路径。因此,可以逐步地(stepwise)搜索移动路径,并且这可以减轻搜索移动路径所需的处理负荷。
[0097]
[第四实施例]
[0098]
图10是示出视频游戏处理服务器10d(以下称为“服务器10d”)的配置的框图,其为视频游戏处理服务器10(参照图1)的示例。在本实施例中,服务器10d至少包括有设定单元11、布置单元12、削减单元13d以及搜索单元14。
[0099]
削减单元13d具有优先削减除了布置在多个区域的边界部分上的路点以外的一些路点的功能。
[0100]
在此,多个区域的边界部分是指与属于其他区域的某个路点相邻的路点的部分。优先削减除了布置在多个区域的边界部分上的路点以外的一些路点的配置没有特别限制。然而,优选地,削减单元13d配置为不削减布置在边界部分上的路点中的至少一个。作为这样的配置的示例,存在有一配置,在该配置中,从削减目标中排除布置在一个区域的边界部分上的路点。在这一点上,针对削减一些路点的时机(timing),可考虑在生成多个区域之前执行削减的配置、在生成多个区域之后执行削减的配置以及在生成多个区域之前和之后执行多次削减的配置。
[0101]
图11是示出由视频游戏处理系统100(参照图1)执行的游戏处理的示例的流程图。以下,将以服务器10d和用户终端20(以下称为“终端20”)的动作为例进行说明。在这一点上,从避免重复说明的角度省略示出服务器10d和终端20中的每一个的动作的流程图。
[0102]
在布置路点后,服务器10d优先削减除了一部分路点以外的一些路点(步骤s4-11)。在本实施例中,服务器10d优先削减除了布置在多个区域的边界部分上的路点以外的一些路点。
[0103]
如上所述,作为第四实施例的一个方面,服务器10d配置为包括有设定单元11、布置单元12、削减单元13d以及搜索单元14。因此,削减单元13d优先削减除了布置在多个区域的边界部分上的路点以外的路点。因此,可以防止过度削减。
[0104]
[第五实施例]
[0105]
图12是示出视频游戏处理服务器10z(以下称为“服务器10z”)的配置的框图,其为视频游戏处理系统100(参照图1)中的视频游戏处理服务器10的示例。在本实施例中,服务器10z至少包括有设定单元11z、布置单元12z、削减单元13z、搜索单元14z、生成单元15z以及确定单元16z。
[0106]
设定单元11z具有设定与虚拟空间中的对象的可移动范围对应的导航网格的功能。以下,将以在出现士兵和武器的3d掩护射击(cover shooting)游戏的虚拟空间中设定导航网格的情况为例进行说明。
[0107]
在本实施例中,允许敌兵从地图的边缘搜索玩家。此外,敌兵可以在地图上的任何地方与玩家开战。因此,在导航网格上执行诸如步行或跑步的正常移动。
[0108]
在此,为了实现敌兵的功能,服务器10z可以搜索从地图的一端到另一端的长且大的路径。在本实施例中,为了抑制路径的搜索负荷,因此执行层次(hierarchical)型路径搜索。此外,敌兵不仅可以到达所布置的位置附近,而且可以到达玩家可以到达的地方。即,敌兵可越过或攀爬掩蔽物(cover),或者经由门、窗和梯子移动。在本实施例中,为了确保移动的自由度,利用跳转链接(jump link)来使玩家和敌兵中的每一个穿过导航网格不连续的
地方。
[0109]
此外,在本实施例中,作为关于导航的功能,还将说明通过导航网格(以下,也称为“navmesh”)的连续部分的移动、通过跳转链接在网格外的移动、用于减轻长且大的路径的搜索负荷的层次结构以及自动生成上述数据的功能。
[0110]
在此,作为用于上述功能的地形表示的示例,存在有导航网格、路点、连接图和基于路点的上层图(upper layer graph)。
[0111]
导航网格使用公知的技术(例如,重铸导航(recast navigation))。因此,在此省略其详细说明。在这一点上,在本实施例中,执行对从玩家初始位置连续的多边形设定可通行标志等。由于玩家可以攀爬具有一定高度的壁,因此也可对从玩家初始位置不连续但从玩家攀爬的壁连续的多边形设定可通行标志。在这种情况下,例如,搜索设置在偏离了从不相邻的多边形的边缘可以攀爬的高度距离的位置附近的网格。如果存在对应的网格,则从那里设定连续标记。
[0112]
布置单元12z具有根据预定的布置规则在所设定的导航网格上布置多个路点的功能。以下,将以路点离线自动布置在导航网格上的情况为例进行说明。
[0113]
在此,路点是作为嵌入视频游戏所必要的信息的基础而发挥作用。在本实施例中,如果需要,诸如xyz位置、点下的导航网格多边形id、lof(火线(line of fire))、点属性、点连接信息、相邻的掩蔽物id、相邻的门id、相邻的梯子/窗id、射击掩蔽物列表、从点的位置到天花板的高度、越过相邻的掩蔽物时的高度、与壁的距离或骑在某个点上的损坏的暗机关(gimmick)id的信息与路点相关联。
[0114]
此外,在本实施例中,通过基于玩家初始位置并利用洪水填充算法(flood fill)布置点,来自动布置路点。在这一点上,由于网格形状而可能未在所需位置处形成点。因此,布置单元12z可以配置为任意增加点。在这种情况下,布置单元12z可以配置为针对虚拟空间中的各种对象(例如,门、低掩蔽物、高掩蔽物的边缘和安装有梯子的位置)的位置接收路点的增加。
[0115]
削减单元13z具有从所布置的多个路点中削减根据预定的选择规则而选择的一些路点的功能。以下,将以作为路点遍布(spread all over)之后的处理而削减路点的情况为例进行说明。在这一点上,优选地,削减之后的索引(index)在16位以内。这是因为不希望增加点的索引,因为它在这里和那里存储。此外,在索引的数量大的情况下,其搜索时的负荷增加过多。
[0116]
图13是用于说明路点的削减的示例的说明图。在本实施例中,通过基于玩家初始位置1301而在自动地布置多个路点(例如,路点1311和路点1312)之后以随机的方式来选择点(参照图13中的(a)),对所布置的路点进行削减(参照图13(b))。此外,在本实施例中,不应该被削减的一些点不会被削减。即,例如,在削减路点时使得削减之后的距离太宽的点、通过削减路点而将图形切断的点、通过削减路点而形成太迂回的路径的点、上层图节点的边界、成为诸如门等的动作的触发的位置等对应的路点被选择的情况下,不会削减所述对应的路点。
[0117]
图14是用于说明不应该被削减的路点的示例的说明图。如图14所示,如果在设定了导航网格的范围1401中删除了路点1411,就会丧失其上下部分之间的连接。即,导航网格上的射线投射(raycast)不会从路点1412和路点1413中的每一个穿过路点1411。因此,不削
减路点1411。
[0118]
搜索单元14z具有基于削减一些路点之后的多个路点的布置来搜索对象的移动路径的功能。以下,将以通过使用将所布置的路点用作路径候选位置的公知的路径搜索技术来执行从起点到终点的路径(诸如从敌人的位置到玩家的位置的路径、从敌人的位置到目标对象的路径或从玩家的位置到由玩家选择的位置的路径)的路径搜索的情况为例进行说明。
[0119]
生成单元15z具有通过根据预定的分类规则对布置在虚拟空间中的多个路点进行分组来生成多个区域的功能。以下,以作为用于层次型路径搜索的最上层结构而生成位置接近的点在一定程度上集中并被标记的区域(ai区域)的情况为例进行说明。在这一点上,将标记边界的点连接的信息用作用于指定多个区域之间的连接关系的连接信息。即,为了确定用于从包括有移动开始位置的区域移动到包括有移动目标位置的区域的区域,使用与位于各区域的边界上的每个路点相关联的信息。
[0120]
在本实施例中,ai区域起着将这些点作为一定程度的整体(lump)来处理的作用。优选地,ai区域配置为粗略地表达位置而不是过于详细。此外,ai区域还具有作为成本增加目标而防止对象穿过同一路径的作用。ai区域也可以用于玩家和敌人之间的影响度的图(势力图(influence map))等。此外,可以期望ai区域允许通过位置表示的层次化来减轻路径的搜索负荷。
[0121]
图15是用于说明生成区域的方法的示例的说明图。如图15中的(a)所示,在从地形1501生成区域(即根据本实施例的ai区域)的情况下,路点遍布在地形1501上;相邻的路点彼此连接;对每个路点设定距相应的壁的距离;并且通过分水岭(watershed)算法对所设定的距离进行分割。因此,如图15中的(b)所示,可以生成区域s1和区域s2。在这一点上,补充说明分水岭算法。在将与壁的距离视为高度的情况下,可以形成在其顶部具有路点1511的第一山峰和在其顶部具有路点1512的第二山峰。当从最高点开始评估时,首先标记路点1511(标记1)。接着,通过降低要评估的高度,评估分别位于第一山峰中的路点1511的上侧和下侧的两个点和第二山峰的顶部(即路点1512)。在这种情况下,由于第二山峰的点在其顶部,所以标记路点1512(标记2)。由于第一山峰的两个点是第一山峰的一部分,所以以与第一山峰的顶部(即路点1511)(标记1)相同的方式来标记两个点。在这一点上,通过确定其相邻的点是否被标记可以确定某个点是否是山峰的一部分。接着,通过在降低要评估的高度之后执行相同的处理,在第一山峰的底部和第二山峰的底部标记剩余的点。最后,从其相邻的点标记不包括在第一山峰和第二山峰的各部分(即距相应的壁的距离被确定为0或最小的部分)。从上面可以标记出直到最低的高度的点。即,可以通过标记1的节点和标记2的节点生成上层图。
[0122]
此外,在本实施例中,基于预定的调整规则调整所生成的区域。即,从多个区域中分割满足预定的分割条件的每个区域,并且将满足预定的合并条件的区域与其他区域合并。通过以这种方式配置生成单元15z,每个过小的区域附接于相邻的大区域,并且过大的区域被反复分割以使得“其长边切成两半”。并且通过以这种方式形成具有一定尺寸的区域,可以将它们粗略地作为“单位”来处理。在这一点上,生成单元15z并不配置为生成具有落入一定范围内的尺寸的每个区域,但是生成单元15z可以配置为提供分割条件和合并条件,使每个区域满足多种尺寸条件中的任何一种。
[0123]
确定单元16z具有基于所生成的多个区域的布置来确定允许对象移动的区域(以下称为“可移动区域”)的功能。在本实施例中,以通过将各区域用作节点来利用公知的路径搜索技术的情况为例进行说明。
[0124]
如上所述,可以按照导航网格、路点图和上层图的顺序来创建数据,并且可以按照上层图、路点图和导航网格的顺序来实现路径搜索。
[0125]
在这一点上,路径搜索最终期望的移动路径是视频游戏的设计者所期望的顺利的(smooth)移动路径。即,优选地,确定单元16z配置为可以根据对象的类型来推导贝塞尔(bezier)曲线、直线或由于从对象的当前位置到目标位置的线不连续而需要动作的线。在本实施例中,通过在上层图级别中指定所需的动作和位置,在路点级别中指定所需的动作和位置,并搜索对象在指定的位置之间连续移动的移动路径,从而可以推导出各种线。在这一点上,可以通过穿过上层路径、在上层节点内创建路点的路径、连接所有节点的路点、沿点路径创建导航网格多边形列表、创建对象所穿过的边缘的列表以及通过使用边缘的中间点创建贝塞尔曲线来推导连续(或持续)移动的路径。
[0126]
图16是用于说明存储在服务器10提供的存储单元(图中未示出)中的信息的存储状态的示例的说明图。如图16所示,区域编号和属于区域的每个路点的识别信息在存储单元中作为区域相关信息而存储为彼此相关联。
[0127]
在此,区域编号是指每个所生成的区域(例如,ai区域)的识别信息。创建区域编号的配置没有特别限制。然而,优选地,服务器10z配置为可以唯一指定多个区域中的每一个。作为区域编号的示例,存在有附接于每个路点的标记。
[0128]
图17是示出由设置有服务器10z的视频游戏处理系统100z(以下称为“系统100z”)执行的游戏处理的示例的流程图。在根据本实施例的游戏处理中,执行与路点的布置有关的处理等。以下,将说明每个处理。在这一点上,可以在不与处理内容相矛盾等的情况下改变每个处理的顺序。
[0129]
例如,在访问服务器10z的用户终端20(以下称为“终端20”)满足路点的布置条件的情况下,开始游戏处理。以下,将以操作终端20的用户输入用于移动路径的搜索请求的情况为例进行说明。
[0130]
在游戏处理中,系统100z首先设定导航网格(步骤s301)。在本实施例中,服务器10z指定要提供给终端20的虚拟空间,并且设定与在所指定的虚拟空间中对象可移动的范围对应的导航网格。
[0131]
在设定导航网格后,系统100z布置路点(步骤s302)。在本实施例中,服务器10z根据预定的布置规则而在所设定的导航网格上布置多个路点。
[0132]
在布置路点后,系统100z削减一些路点(步骤s303)。在本实施例中,服务器10z从所布置的多个路点中削减根据预定的选择规则选择的一些路点。
[0133]
在削减一些路点后,系统100z生成多个区域(步骤s304)。在本实施例中,服务器10z通过根据预定的分类规则对布置在虚拟空间中的多个路点进行分组来生成多个区域。
[0134]
在生成多个区域后,系统100z确定可移动区域(步骤s305)。在本实施例中,服务器10z基于所生成的多个区域的布置确定适合从包括有移动开始位置的区域移动到包括有移动结束位置的区域的可移动区域。
[0135]
在确定可移动区域后,系统100z搜索移动路径(步骤s306)。在本实施例中,服务器
10z基于布置在虚拟空间中的多个路点的布置来搜索对象的移动路径。
[0136]
如上所述,作为第五实施例的一个方面,具有与虚拟空间中的移动路径的搜索有关的功能的服务器10z配置为包括有设定单元11z、布置单元12z、削减单元13z、搜索单元14z、生成单元15z以及确定单元16z。因此,设定单元11z设定与在虚拟空间中的对象的可移动范围对应的导航网格;布置单元12z根据预定的布置规则(例如,洪水填充算法)而在所设定的导航网格上布置多个路点;削减单元13z从所布置的多个路点中削减根据预定的选择规则(例如,随机选择)而选择的一些路点;以及搜索单元14z基于在削减一些路点之后的多个路点的布置来搜索对象的移动路径。因此,可以减轻搜索对象的移动路径所需的处理负荷。
[0137]
即,不仅通过布置路点而且通过在布置路点之后削减一些路点,可减少搜索的信息量。因此,可以减轻搜索对象的移动路径所需的处理负荷。
[0138]
在这一点上,虽然在上述第五实施例中没有特别提及,但是,当服务器10z通过设定单元11z、布置单元12z、削减单元13z、生成单元15z和确定单元16z执行各自的处理时的时机没有特别限制。服务器10z可以配置为在开发视频游戏时或在进行视频游戏时执行处理。即,服务器10z可以配置为独立于路径搜索而执行导航网格的设定、路点的布置和ai区域的生成,或者可以配置为这些与路径搜索一起以一系列的流程被执行。作为这样的配置的示例,存在有一配置,在该配置中,搜索单元14z根据视频游戏的进程而读取玩家进行视频游戏之前所生成的信息(例如,区域相关信息);根据视频游戏的状况更新所读取的信息(例如,可移动区域的改变);以及基于所更新的信息搜索移动路径。此外,作为另一示例,存在有一配置,在该配置中,搜索单元14根据视频游戏的进程设定导航网格,以及通过使用所生成的信息实时搜索移动路径。
[0139]
在这一点上,虽然在上述第五实施例中没有特别提及,但是,服务器10z可以配置为:设定与在虚拟空间中的对象的可移动范围对应的导航网格;根据预定的布置规则(例如,洪水填充算法)而在所设定的导航网格上布置多个路点;从所布置的多个路点中削减根据预定的选择规则(例如,随机选择)而选择的一些路点;以及在存储单元中存储包含削减后的路点的布置的用于搜索的信息(例如,虚拟空间的地形表现)。在这种情况下,获取包含用于搜索的信息的与视频游戏有关的信息的服务器10z基于用于搜索的信息来搜索对象在虚拟空间中的移动路径。
[0140]
如上所述,根据本申请的实施例中的每一个能够解决一个或两个以上的不足。在这一点上,实施例中的每一个的效果是非限制性效果或是非限制性效果中的一个示例。
[0141]
在这一点上,在上述实施例中的每一个中,多个用户终端20、201~20n和服务器10中的每一个根据存储在相应终端或服务器所设有的存储装置中的各种控制程序(例如,视频游戏处理程序)来执行上述各种处理。
[0142]
此外,系统100的配置不限于已经作为上述实施例中的每一个的示例说明的配置。例如,系统100可以配置为服务器10执行作为由用户终端20执行的处理而已经说明了的处理的一部分或全部。另外,系统100可以配置为多个用户终端20、201~20n中的任一个(例如,用户终端20)执行作为由服务器10执行的处理而已经说明了的处理的一部分或全部。此外,系统100可以配置为服务器10所包括的存储单元的一部分或全部包括在多个用户终端20、201~20n中的任一个中。即,系统100可以配置为根据系统100的用户终端20和服务器10
中的任一个的功能的一部分或全部包括在另一个中。
[0143]
此外,系统100可以配置为程序使不包括任何通信网络的单个装置实现如上述各实施例的示例说明的功能的一部分或全部。
[0144]
[附录]
[0145]
已经描述了对上述实施例的说明,以便至少能够由本发明所属领域的普通技术人员实现以下的发明。
[0146]
(1)一种非暂态计算机可读介质,包含有视频游戏处理程序,该视频游戏处理程序用于使服务器实现有关在虚拟空间中搜索移动路径的功能,所述功能包括:
[0147]
设定功能,配置为设定与虚拟空间中的对象的可移动范围对应的导航网格;
[0148]
布置功能,配置为根据预定的布置规则而在所设定的导航网格上布置多个路点;
[0149]
削减功能,配置为从所布置的多个路点中削减根据预定的选择规则而选择的一些路点;以及
[0150]
搜索功能,配置为基于削减后的多个路点的布置来搜索对象的移动路径。
[0151]
(2)根据(1)所述的非暂态计算机可读介质,其中,
[0152]
削减功能包括有以下功能:参考预定的存储单元且在该存储单元中将多个路点中的每一个与其他路点之间的连接的信息和与视频游戏有关的信息存储为彼此关联,并且在所选择的路点满足预定的禁止条件的情况下,不削减所选择的路点。
[0153]
(3)根据(1)或(2)所述的非暂态计算机可读介质,其中,
[0154]
所述功能还包括:
[0155]
生成功能,配置为通过根据预定的分类规则对布置在虚拟空间中的多个路点进行分组来生成多个区域;以及
[0156]
确定功能,配置为基于所生成的多个区域的布置来确定对象移动的区域(以下称为“可移动区域”);
[0157]
其中,搜索功能还包括配置为基于所确定的可移动区域中所包括的路点来搜索对象的移动路径的功能。
[0158]
(4)根据(1)至(3)中任一项所述的非暂态计算机可读介质,其中,
[0159]
削减功能包括配置为优先削减除了布置在多个区域的边界部分上的路点以外的一些路点的功能。
[0160]
(5)根据(1)至(4)中任一项所述的非暂态计算机可读介质,其中,
[0161]
削减功能包括配置为削减路点以使得多个路点的数量小于预定的数量的功能。
[0162]
(6)一种非暂态计算机可读介质,包含有视频游戏处理程序,该视频游戏处理程序用于使用户终端实现(1)至(5)中任一项所述的视频游戏处理程序使服务器实现的功能中的至少一个功能,用户终端能够与服务器通信。
[0163]
(7)一种服务器,安装有(1)至(6)中任一项所述的视频游戏处理程序。
[0164]
(8)一种视频游戏处理系统,用于执行有关在虚拟空间中搜索移动路径的处理,该视频游戏处理系统包括有通信网络、服务器以及用户终端,该视频游戏处理系统包括:
[0165]
设定单元,其配置为设定与虚拟空间中的对象的可移动范围对应的导航网格;
[0166]
布置单元,其配置为根据预定的布置规则而在所设定的导航网格上布置多个路点;
[0167]
削减单元,其配置为从所布置的多个路点中削减根据预定的选择规则而选择的一些路点;以及
[0168]
搜索单元,配置为基于削减后的多个路点的布置来搜索对象的移动路径。
[0169]
(9)根据(8)所述的视频游戏处理系统,其中,
[0170]
服务器包括有所述设定单元、所述布置单元、所述削减单元以及所述搜索单元,
[0171]
而且其中,用户终端包括:输出单元,其配置为将显示由搜索单元搜索的移动路径的游戏画面输出到显示装置的显示屏。
[0172]
(10)一种非暂态计算机可读介质,包含有视频游戏处理程序,该视频游戏处理程序用于使用户终端实现有关在虚拟空间中搜索移动路径的终端功能,终端功能包括:
[0173]
配置为从服务器接收有关服务器所包括的服务器功能的信息的功能;以及
[0174]
配置为执行与服务器功能中的每一个对应的输入或输出的功能;
[0175]
其中,服务器包括服务器功能,服务器功能包括:
[0176]
设定功能,配置为设定与虚拟空间中的对象的可移动范围对应的导航网格;
[0177]
布置功能,配置为根据预定的布置规则而在所设定的导航网格上布置多个路点;
[0178]
削减功能,配置为从所布置的多个路点中削减根据预定的选择规则而选择的一些路点;以及
[0179]
搜索功能,配置为基于削减后的多个路点的布置来搜索对象的移动路径。
[0180]
(11)一种非暂态计算机可读介质,包含有视频游戏处理程序,该视频游戏处理程序用于使用户终端实现有关在虚拟空间中搜索移动路径的功能,所述功能包括:
[0181]
设定功能,配置为设定与虚拟空间中的对象的可移动范围对应的导航网格;
[0182]
布置功能,配置为根据预定的布置规则而在所设定的导航网格上布置多个路点;
[0183]
削减功能,配置为从所布置的多个路点中削减根据预定的选择规则而选择的一些路点;以及
[0184]
搜索功能,配置为基于削减后的多个路点的布置来搜索对象的移动路径。
[0185]
(12)一种非暂态计算机可读介质,包含有视频游戏处理程序,该视频游戏处理程序用于使服务器实现(11)中所述的视频游戏处理程序使用户终端实现的功能中的至少一个功能,服务器能够与用户终端通信。
[0186]
(13)一种用户终端,安装有根据(11)或(12)所述的视频游戏处理程序。
[0187]
(14)一种视频游戏处理方法,执行有关在虚拟空间中搜索移动路径的处理,该视频游戏处理方法包括:
[0188]
设定处理,配置为设定与虚拟空间中的对象的可移动范围对应的导航网格;
[0189]
布置处理,配置为根据预定的布置规则而在所设定的导航网格上布置多个路点;
[0190]
削减处理,配置为从所布置的多个路点中削减根据预定的选择规则而选择的一些路点;以及
[0191]
搜索处理,配置为基于削减后的多个路点的布置来搜索对象的移动路径。
[0192]
(15)一种视频游戏处理方法,通过视频游戏处理系统来执行有关在虚拟空间中搜索移动路径的处理,该视频游戏处理系统包括有通信网络、服务器以及用户终端,该视频游戏处理方法包括:
[0193]
设定处理,配置为设定与虚拟空间中的对象的可移动范围对应的导航网格;
[0194]
布置处理,配置为根据预定的布置规则而在所设定的导航网格上布置多个路点;
[0195]
削减处理,配置为从所布置的多个路点中削减根据预定的选择规则而选择的一些路点;以及
[0196]
搜索处理,配置为基于削减后的多个路点的布置来搜索对象的移动路径。
[0197]
(16)一种非暂态计算机可读介质,包括有视频游戏处理程序,该视频游戏处理程序用于使计算机实现有关在虚拟空间中搜索移动路径的功能,所述功能包括:
[0198]
设定功能,配置为设定与虚拟空间中的对象的可移动范围对应的导航网格;
[0199]
布置功能,配置为根据预定的布置规则而在所设定的导航网格上布置多个路点;以及
[0200]
削减功能,配置为从所布置的多个路点中削减根据预定的选择规则而选择的一些路点。
[0201]
(17)一种非暂态计算机可读介质,包括有视频游戏处理程序,该视频游戏处理程序用于使计算机实现有关在虚拟空间中搜索移动路径的功能,所述功能包括:
[0202]
设定功能,配置为设定与虚拟空间中的可移动范围对应的导航网格;
[0203]
布置功能,配置为根据预定的布置规则而在所设定的导航网格上布置多个路点;
[0204]
削减功能,配置为从所布置的多个路点中削减根据预定的选择规则而选择的一些路点;以及
[0205]
搜索功能,配置为基于通过使用设定功能、布置功能和削减功能而生成的信息来搜索布置在虚拟空间中的对象的移动路径。
[0206]
(18)一种非暂态计算机可读介质,包括有视频游戏处理程序,该视频游戏处理程序用于使计算机实现生成用于在虚拟空间中搜索移动路径的信息的功能,所述功能包括:
[0207]
设定功能,配置为设定与虚拟空间中的对象的可移动范围对应的导航网格;
[0208]
布置功能,配置为根据预定的布置规则而在所设定的导航网格上布置多个路点;
[0209]
削减功能,配置为从所布置的多个路点中削减根据预定的选择规则而选择的一些路点;以及
[0210]
存储功能,配置为在存储单元中存储用于搜索的信息,用于搜索的信息包含削减后的路点的布置。
[0211]
根据本发明的实施例,对于减轻搜索对象的移动路径所需的处理负荷是有用的。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1