室内游戏关卡生成方法、装置、存储介质及电子设备与流程

未命名 08-22 阅读:129 评论:0


1.本公开涉及计算机技术领域,具体涉及一种室内游戏关卡生成方法、室内游戏关卡生成装置、存储介质及电子设备。


背景技术:

2.在计算机游戏中,玩家进入游戏后,需要按照室内游戏关卡预先加载出相应的游戏场景以供玩家使用。
3.由于大世界游戏的游戏场景复杂,不合理地设置室内游戏关卡可能导致室内游戏关卡对应的建筑、树木、车辆、雕塑等等所有游戏资源较多,在加载时会给设备性能带来很大压力,造成在游戏过程中出现诸如游戏卡顿、手机发烫、游戏闪退、游戏占用手机内存过高等性能表现问题,玩家游戏体验差。
4.需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。


技术实现要素:

5.本公开提供一种室内游戏关卡生成方法、室内游戏关卡生成装置、存储介质及电子设备,旨在解决游戏加载室内游戏关卡造成的设备性能差的问题。
6.本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
7.根据本公开实施例的一方面,提供了一种室内游戏关卡生成方法,包括:获取游戏场景中一建筑的建筑结构信息;根据所述建筑结构信息识别所述建筑的建筑类型,并基于所述建筑类型创建所述建筑的室内游戏关卡;基于所述室内游戏关卡以及所述建筑结构信息,配置所述室内游戏关卡的加载时机和卸载时机;遍历所述游戏场景中的所有建筑,得到所述游戏场景的所有室内游戏关卡以及室内游戏关卡的加载时机和卸载时机,生成所述游戏场景对应的游戏关卡。
8.根据本公开实施例的第二方面,提供了一种室内游戏关卡运行方法,包括:响应于检测到满足游戏场景中目标室内游戏关卡的加载时机时,加载所述目标室内游戏关卡;以及响应于检测到满足游戏场景中目标室内游戏关卡的卸载时机时,卸载所述目标室内游戏关卡;其中,所述游戏场景中包括多个室内游戏关卡,每一室内游戏关卡配置有对应的加载时机和卸载时机,所述室内游戏关卡是根据所述游戏场景中建筑的建筑类型创建的。
9.根据本公开实施例的第三方面,提供了一种室内游戏关卡生成装置,包括:获取模块,用于获取游戏场景中一建筑的建筑结构信息;创建模块,用于根据所述建筑结构信息识别所述建筑的建筑类型,并基于所述建筑类型创建所述建筑的室内游戏关卡;配置模块,用于基于所述室内游戏关卡以及所述建筑结构信息,配置所述室内游戏关卡的加载时机和卸载时机;遍历模块,用于遍历所述游戏场景中的所有建筑,得到所述游戏场景的所有室内游戏关卡以及室内游戏关卡的加载时机和卸载时机,生成所述游戏场景对应的游戏关卡。
10.根据本公开实施例的第四方面,提供了一种室内游戏关卡运行装置,包括:加载模块,用于响应于检测到满足游戏场景中目标室内游戏关卡的加载时机时,加载所述目标室内游戏关卡;以及卸载模块,用于响应于检测到满足游戏场景中目标室内游戏关卡的卸载时机时,卸载所述目标室内游戏关卡;其中,所述游戏场景中包括多个室内游戏关卡,每一室内游戏关卡配置有对应的加载时机和卸载时机,所述室内游戏关卡是根据所述游戏场景中建筑的建筑类型创建的。
11.根据本公开实施例的第五方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中的室内游戏关卡生成方法。
12.根据本公开实施例的第六方面,提供了一种电子设备,其特征在于,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中的室内游戏关卡生成方法。
13.本公开示例性实施例可以具有以下部分或全部有益效果:
14.在本公开的一些实施例所提供的技术方案中,通过游戏场景中各建筑的建筑结构信息识别各建筑的建筑类型,然后对不同建筑类型的建筑分别创建室内游戏关卡,再根据创建室内游戏关卡使用的建筑结构信息配置加载时机和卸载时机。基于上述方法,一方面能够通过研究具体的游戏建筑结构,将游戏建筑内部拆分成多个室内游戏关卡,对室内游戏关卡进行更细粒度的拆分,以解决大世界室内游戏关卡内容过多且同时加载与卸载导致的各种性能问题;另一方面,基于建筑结构信息增加室内游戏关卡加载与卸载的控制方式,能够优化室内游戏关卡的加载形式,减少室内游戏关卡加载与卸载的穿帮等表现问题,进一步优化游戏玩家的游戏体验。
15.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
16.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
17.图1示意性示出本公开示例性实施例中一种室内游戏关卡生成方法的流程示意图;
18.图2示意性示出本公开示例性实施例中一种识别建筑类型方法的流程示意图;
19.图3示意性示出本公开示例性实施例中另一种识别建筑类型方法的流程示意图;
20.图4示意性示出本公开示例性实施例中一种创建室内游戏关卡方法的流程示意图;
21.图5示意性示出本公开示例性实施例中一种室内游戏关卡生成装置的组成示意图;
22.图6示意性示出本公开示例性实施例中一种室内游戏关卡运行装置的组成示意图;
23.图7示意性示出本公开示例性实施例中一种计算机可读存储介质的示意图;
24.图8示意性示出本公开示例性实施例中一种电子设备的计算机系统的结构示意图。
具体实施方式
25.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
26.此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
27.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
28.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
29.由于大世界游戏的游戏场景复杂,所以会给设备性能带来很大压力,造成在游戏过程中出现诸如游戏卡顿、手机发烫、游戏闪退、游戏占用手机内存过高等性能表现问题,玩家游戏体验差。
30.现有技术中,对于一些游戏来说,当玩家在各个游戏场景中移动时,通过脚本去规定玩家在哪个节点去加载哪些关卡是不合适的而且不准确的。在逻辑上很难准确地给出玩家在活动过程中应该加载哪些关卡而且不会穿帮。另一方面,在玩家进入游戏场景中,一次性加载所有关卡又会给内存带来极大负荷。
31.因此,基于现有技术的缺点,本公开提供了一种室内游戏关卡生成方法,能够根据建筑结构,对室内游戏关卡进行更细粒度的拆分,并增加室内游戏关卡加载与卸载的控制方式,以解决大世界室内游戏关卡内容过多且同时加载与卸载导致的各种性能问题。
32.以下对本公开实施例的技术方案的实现细节进行详细阐述。
33.图1示意性示出本公开示例性实施例中一种室内游戏关卡生成方法的流程示意图。如图1所示,该室内游戏关卡生成方法包括步骤s101至步骤s104:
34.步骤s101,获取游戏场景中一建筑的建筑结构信息;
35.步骤s102,根据建筑结构信息识别建筑的建筑类型,并基于建筑类型创建建筑的室内游戏关卡;
36.步骤s103,基于室内游戏关卡以及建筑结构信息,配置室内游戏关卡的加载时机和卸载时机;
37.步骤s104,遍历游戏场景中的所有建筑,得到游戏场景的所有室内游戏关卡以及室内游戏关卡的加载时机和卸载时机,生成游戏场景对应的游戏关卡。
38.在本公开的一些实施例所提供的技术方案中,通过游戏场景中各建筑的建筑结构信息识别各建筑的建筑类型,然后对不同建筑类型的建筑分别创建室内游戏关卡,再根据创建室内游戏关卡使用的建筑结构信息配置加载时机和卸载时机。基于上述方法,一方面能够通过研究具体的游戏建筑结构,将游戏建筑内部拆分成多个室内游戏关卡,对室内游戏关卡进行更细粒度的拆分,以解决大世界室内游戏关卡内容过多且同时加载与卸载导致的各种性能问题;另一方面,基于建筑结构信息增加室内游戏关卡加载与卸载的控制方式,能够优化室内游戏关卡的加载形式,减少室内游戏关卡加载与卸载的穿帮等表现问题,进一步优化游戏玩家的游戏体验。
39.下面,将结合附图及实施例对本示例实施方式中的室内游戏关卡生成方法的各个步骤进行更详细的说明。
40.大世界游戏中的游戏地图大、游戏内容丰富、游戏玩法多样,一个游戏场景包括很多资源,例如游戏所用到的建筑、树木、车辆、雕塑等等。为了减少计算机一次性加载的游戏资源内容,可以将游戏场景拆分成多个室内游戏关卡,每一室内游戏关卡就是相当于拆分后的更小的游戏场景,同样包括游戏所用到的建筑、树木、车辆、雕塑等等所有的游戏资源。
41.在步骤s101中,获取游戏场景中一建筑的建筑结构信息。
42.具体地,在游戏制作中,当场编人员制作出游戏场景后,还未划分游戏场景的室内游戏关卡时,可以获取游戏场景中建筑的建筑结构信息用以创建室内游戏关卡。
43.其中,一个游戏场景中可以包括一个或多个建筑,每一建筑都有相应的建筑结构信息。例如该建筑的外立面是全封闭还是未封闭,建筑结构如何,是简单还是复杂,或者是该建筑共有几层,在地上还是底下等。还有建筑的内部内容,例如家具、房间、门、上下楼通道等在建立关卡的过程中都可能涉及的建筑内容。
44.在步骤s102中,根据建筑结构信息识别建筑的建筑类型,并基于建筑类型创建建筑的室内游戏关卡。
45.在本公开的一个实施例中,建筑类型包括三类,分别为封闭式结构、开放式结构以及复杂结构。其中,满足第一条件的建筑为封闭式结构,即建筑外立面全封闭,且建筑结构简单;满足第二条件的建筑为开放式结构,即建筑外立面未封闭,且建筑结构简单;其余的一律视为复杂结构。
46.其中,建筑外立面即为游戏场景中的建筑最外侧的建筑结构,建筑外立面为不透明的,也就是除了游戏玩家从入口处进入该建筑,无法从建筑外侧一次性看见建筑内的情况,则视为全封闭结构。,而建筑外立面为透明的,或者甚至是开放式的外立面,玩家从距离建筑物较远处就可以看到建筑的内部内容则该建筑视为开放式结构。
47.建筑结构简单是指该建筑能够清晰地划分由一层或多层内容组成的独栋建筑。在实际的大世界游戏的之所过程中,一个建筑可能有多个独栋相互组合或拼接而成,因此还设置有复杂结构建筑类型。
48.在可选的实施例中,可以通过图2所示的方法进行建筑物类型的判断。图2示意性示出本公开示例性实施例中一种识别建筑类型方法的流程示意图。如图2所示,步骤s102中识别建筑类型方法包括:
49.步骤s201,获取待优化的游戏场景中一建筑的建筑结构信息;
50.步骤s202,在建筑结构信息满足建筑外立面全封闭且建筑结构简单的第一条件
时,执行步骤s205,确定建筑类型为封闭式结构;
51.步骤s203,在建筑结构信息满足建筑外立面未封闭且建筑结构简单的第二条件时,执行步骤s206,确定建筑类型为开放式结构;
52.步骤s204,在建筑结构信息不满足第一条件且不满足第二条件时,执行步骤s207,确定建筑类型为复杂结构。
53.具体来说,首先针对游戏场景中的一个建筑,根据该建筑的建筑结构信息判断满足何种条件,进而确定建筑类型为封闭式结构、开放式结构以及复杂结构中的哪一种。
54.图3示意性示出本公开示例性实施例中另一种识别建筑类型方法的流程示意图。如图3所示,识别建筑类型方法包括:
55.步骤s301,获取待优化的游戏场景中一建筑的建筑结构信息;
56.步骤s302,判断该建筑是否为简单建筑;若是则执行步骤s303,若不是则执行步骤s307;
57.步骤s303,在判断该建筑为简单建筑后,判断该建筑是否为封闭式结构;若是则执行步骤s304,若不是则执行步骤s307;
58.步骤s304,确定该建筑为封闭式结构;
59.步骤s305,在判断该建筑为简单建筑且不是封闭式结构时,判断该建筑是否为开放式结构;若是则执行步骤s306,若不是则执行步骤s307;
60.步骤s306,确定该建筑为开放式结构;
61.步骤s307,即确定该建筑为复杂结构。
62.具体来说,按照逻辑顺序依次判断该建筑是否为简单建筑、是否为封闭式结构以及是否为开放式结构进而得到该建筑的建筑类型。
63.在确定了建筑的建筑类型之后,便可按照建筑类型对应策略创建该建筑的室内游戏关卡。其主要包括了两个过程,其一是划分为不同的室内游戏关卡,其二是为每一个室内游戏关卡配置不同的类型,进而后续用于配置对应的加载时机和卸载时机。
64.具体而言,在本公开的一个实施例中,在建筑类型为封闭式结构时,基于建筑类型创建建筑的室内游戏关卡,包括:基于建筑的出入层的建筑内容创建第一类型室内游戏关卡;基于建筑的其它层的建筑内容创建第二类型室内游戏关卡;其中,其它层包括建筑的出入层以上层和/或出入层以下层。
65.其中,建筑类型为封闭式结构时,将建筑拆分成出入层的建筑内容,以及需要通过出入层再进入的其它层的建筑内容。其中,出入层也就是虚拟对象可以从该建筑外的游戏场景中进入到建筑的层级,一般来说出入层可以是一层,当然在一些特殊情况下,例如虚拟对象只能从二层进入,那么二层可以作为出入层。一个建筑可以包括多个出入层。
66.然后将出入层的建筑内容划分为一个室内游戏关卡,其它楼层划分为另一个室内游戏关卡。进一步的,若该建筑还包括出入层以上层以及出入层以下层,那么将出入层以上层的建筑内容划分为一个室内游戏关卡,将出入层以下层的建筑内容划分为一个室内游戏关卡。
67.其中,不同的室内游戏关卡后续需要配置不同类型的触发器,因此为了便于触发器的分类,可以在创建室内游戏关卡的同时,标记该室内游戏关卡的类型,可以包括第一类型和第二类型,第一类型室内游戏关卡配置第一触发器和第二触发器,第二类型室内游戏
关卡配置第三触发器。
68.具体地,可以将出入层对应的室内游戏关卡为第一类型的关卡,出入层以上层或出入层以下层对应的室内游戏关卡为第二类型的关卡。
69.举例来说,当虚拟对象进入一个建筑时,首先可以进入一层(即出入层),然后该建筑还有二层及三层,以及地下一层,此时可以将一层创建一个室内游戏关卡,并标记第一类型;二层及三层可以整体创建一个室内游戏关卡,地下一层创建一个室内游戏关卡,均标记第二类型。
70.在本公开的一个实施例中,在建筑类型为开放式结构时,基于建筑类型创建建筑的室内游戏关卡,包括:基于建筑的其它层的建筑内容创建第一类型室内游戏关卡;其中,其它层包括建筑的出入层以上层和/或出入层以下层。
71.具体而言,当建筑为开放式结构时,将出入层之外的其它楼层创建室内游戏关卡。更进一步地,可以将出入层之外地其它楼层中,在玩家位于出入层附近无法看到的部分创建室内游戏关卡。在一些实施例中,出入层的内容将会在玩家进入该建筑所在的游戏场景时,跟随游戏场景进行加载。
72.具体地,在这种情况下,可以为建筑的其它层创建相应的室内游戏关卡,例如为出入层以上层创建一室内游戏关卡,或者为出入层以下层创建一室内游戏关卡。
73.在本公开的一个实施例中,在建筑类型为复杂结构时,基于建筑类型创建建筑的室内游戏关卡,包括:将建筑拆分为简单建筑和/或简单建筑之间的连接建筑;其中,简单建筑为封闭式结构或者开放式结构;基于封闭式结构的简单建筑的出入层的建筑内容、开放式结构的简单建筑的其它层的建筑内容创建第一类型室内游戏关卡;基于封闭式结构的简单建筑的其它层的建筑内容创建第二类型室内游戏关卡;和/或基于连接建筑所连接的楼层建筑内容,创建第一类型室内游戏关卡。
74.其中,建筑类型为复杂结构时,首先需要将该建筑拆分成若干简单建筑,若简单建筑中间还有连接建筑,则将其拆分为连接建筑。然后再判断简单建筑为封闭式结构还是开放式结构,之后再按照如封闭式结构或开放式结构对应的建筑拆分策略来创建室内游戏关卡。
75.需要说明的是,若是连接建筑,则需要根据连接建筑所连接的楼层建筑内容来创建室内游戏关卡。例如,一个复杂建筑由3层的a栋和3层的b栋组成,a栋和b栋的2层之间存在一个连廊,那么将其划分为a栋、b栋以及连接建筑,将a栋1层设置室内游戏关卡a-1,将b栋1层设置室内游戏关卡b-1;由于2层存在连廊,也为出入层,若玩家能够同时目视到a栋2层、连廊以及b栋2层,那么将a栋2层、连廊以及b栋2层设置室内游戏关卡a-b-2,但若玩家在不能同时目视,那么可以将a栋2层设置为室内游戏关卡a-2,连廊单独设置为室内游戏关卡a-b-2,将b栋2层设置为室内游戏关卡b-2;将a栋3层设置室内游戏关卡a-3,将b栋3层设置室内游戏关卡b-3。
76.在步骤s103中,基于室内游戏关卡以及建筑结构信息,配置室内游戏关卡的加载时机和卸载时机;
77.具体来说,室内游戏关卡的加载即终端设备加载该室内游戏关卡对应的游戏场景,卸载即终端设备卸载该室内游戏关卡对应的游戏场景。为室内游戏关卡配置合适的加载时机和卸载时机能够让游戏玩家在游戏中无感地进行游戏的同时减少终端设备加载和
卸载资源的性能压力。
78.一种方式是通过配置触发器来对室内游戏关卡的加载和卸载进行控制。还有一种是可以通过基于距离阈值来设置加载和卸载的判断条件。
79.在一些实施例中,可以通过配置触发器来对室内游戏关卡的加载和卸载进行控制。
80.具体而言,配置室内游戏关卡的加载时机和卸载时机包括:配置室内游戏关卡对应的触发器以及触发器的触发条件;其中,触发器用于在检测到满足触发条件时加载和/或卸载室内游戏关卡。
81.需要说明的是,触发器可以设置有三种类型:
82.第一触发器(bp_gate_entry),bp_gate_entry是个没有正方向的触发器,虚拟对象从触发范围(box)外触碰到box就会触发对应关卡的加载,它没有卸载的功能。
83.第二触发器(bp_gate_exit),bp_gate_exit是个没有正方向的触发器,虚拟对象从box外触碰到box就会触发对应关卡的卸载,它没有加载的功能。
84.第三触发器(bp_gate),bp_gate是一个规定了正方向的box状触发器,虚拟对象顺着正方向通过触发器就会触发对应关卡的加载,逆着正方向通过触发器就会触发对应关卡的卸载。
85.有了以上三种触发器,就可以控制虚拟对象在应该看见室内游戏关卡的地方和时机来加载需要的室内游戏关卡。接下来就是为建筑中不同的室内游戏关卡配置相应类型的触发器。
86.在本公开的一个实施例中,在室内游戏关卡为第一类型室内游戏关卡时,配置室内游戏关卡对应的触发器以及触发器的触发条件,包括:为第一类型室内游戏关卡配置第一触发器和第一触发范围;其中,第一触发器用于在检测到虚拟对象进入第一触发范围时加载室内游戏关卡;以及为第一类型室内游戏关卡配置第二触发器和第二触发范围;其中,第二触发器用于在检测到虚拟对象进入第二触发范围时卸载室内游戏关卡。
87.具体而言,在封闭式结构的建筑中,建筑的出入层的建筑内容创建的是第一类型室内游戏关卡;在开放式结构的建筑中,建筑的其它层的建筑内容为第一类型室内游戏关卡。可以为第一类型室内游戏关卡分别配置第一触发器和第二触发器,以适配这类虚拟对象从开放区域进入室内游戏关卡的游戏情境。
88.在一些实施例中,为第一类型室内游戏关卡配置第一触发器及第一触发器的box,进而在虚拟对象触碰到第一触发器的box时进行室内游戏关卡的加载;同时还需要配置第二触发器及其box,用于在虚拟对象触碰到第二触发器的box时进行该室内游戏关卡的卸载。
89.在本公开的一个实施例中,在室内游戏关卡为第二类型室内游戏关卡时,配置室内游戏关卡对应的触发器以及触发器的触发条件,包括:为第二类型室内游戏关卡配置第三触发器、第三触发范围和正方向;其中,第三触发器用于在检测到虚拟对象沿着正方向通过第三触发范围时加载室内游戏关卡,以及在检测到虚拟对象沿着正方向的逆方向通过第三触发范围时卸载室内游戏关卡。
90.具体而言,在封闭式结构的建筑中,建筑的其它层的建筑内容为第二类型室内游戏关卡。为第二类型室内游戏关卡配置第三触发器,进而能够在虚拟对象进入和离开时即
时加载和卸载室内游戏关卡。第二类型的室内游戏关卡是在虚拟对象进入第一类型室内游戏关卡之后,在行进过程中再进入的关卡,相对来说使用的频率较低,此外,室内范围较小,其加载卸载范围较为固定,因此加载和卸载可以是针对同一box,因此,第三触发器能够更好地适配该类型地关卡,还能减少触发器数量,节省计算资源。
91.在本公开的一个实施例中,除了使用触发器来控制室内游戏关卡的加载和卸载,还可以通过距离阈值来判断,其中距离阈值可以是根据玩家的目视情况确定,当玩家可以“目视”到室内游戏关卡时进行加载,远离到一定位置,不能“目视”到室内游戏关卡时进行卸载,以将游戏场景设置为更符合实际现实场景的情况。
92.具体地,配置室内游戏关卡的加载时机,包括:获取虚拟对象的目视距离参数;将虚拟对象所处的第一位置与室内游戏关卡所处的第二位置之间的距离差小于目视距离参数配置为加载时机。
93.具体而言,当虚拟对象能够目视到室内游戏关卡时,则加载该室内室内游戏关卡。虚拟对象的位置较好确认,可以是虚拟对象的坐标点,而室内游戏关卡可以是将其抽象为一个规则区域,将该规则区域抽象成一个质点,作为室内游戏关卡的位置。可选地,将建筑中与虚拟对象距离最近的外墙位置作为第二位置。
94.通过配置合适的目视距离参数作为加载室内游戏关卡的条件,使得在检测到虚拟对象所处的第一位置与室内游戏关卡所处的第二位置之间的距离差小于目视距离参数配置,就加载该室内游戏关卡。
95.需要说明的是,由于虚拟对象在不同的位置目视的距离不同,不同的室内游戏关卡可以配置不同的目视距离参数,进而分别用于加载不同室内游戏关卡的判断。
96.上述配置室内游戏关卡的卸载时机,包括:获取室内游戏关卡的保底距离参数;将虚拟对象所处的第一位置与室内游戏关卡所处的第二位置之间的距离差大于保底距离参数配置为卸载时机。
97.当虚拟对象离开该室内游戏关卡到一定距离之后,则自动卸载。此时则需要配置一个保底距离参数,当虚拟对象所处的第一位置与室内游戏关卡所处的第二位置之间的距离差大于保底距离参数,则启动卸载该室内游戏关卡。
98.在步骤s104中,遍历游戏场景中的所有建筑,得到游戏场景的所有室内游戏关卡以及室内游戏关卡的加载时机和卸载时机,生成游戏场景对应的游戏关卡。
99.具体而言,一个游戏场景中可能包括多个建筑,针对每一个建筑都采用步骤s102创建室内室内游戏关卡,以及采用步骤s103配置室内游戏关卡的加载和卸载时机,然后遍历游戏场景中所有的建筑,即可完成室内游戏关卡的创建以及加载和卸载时机的配置。
100.需要说明的是,除了在每创建一个室内游戏关卡后立即配置加载和卸载时机,也可以在创建完成所有室内游戏关卡后统一进行加载和卸载时机的配置,本公开对各步骤的执行顺序不做具体限定。
101.图4示意性示出本公开示例性实施例中一种创建室内游戏关卡方法的流程示意图。参考图4所示,该创建室内游戏关卡方法具体包括以下步骤:
102.步骤s401,获取待优化的游戏场景;其中,待优化的游戏场景即为该游戏场景中未完成创建室内游戏关卡的过程;
103.步骤s402,判断游戏场景内是否还有待优化的建筑,若有则跳转至步骤s403,若没
有则跳转至步骤s410;其中,待优化的建筑即为该建筑中未完成创建室内游戏关卡的过程;
104.步骤s403,选择一个待优化的建筑;
105.步骤s404,判断该建筑是否为封闭式结构,若是则跳转至步骤s405,若不是则跳转至步骤s406;
106.步骤s405,将建筑的一层内部内容拆分为一个新的室内游戏关卡,将建筑的二层及以上内部内容拆分为一个新的室内游戏关卡,将建筑的地下部分拆分为一个新的室内游戏关卡;
107.步骤s406,判断该建筑是否为开放式结构,若是则跳转至步骤s407,若不是则跳转至步骤s408;
108.步骤s407,将建筑的二层及以上玩家在地面上看不见的内部内容拆分为一个新的室内游戏关卡,将建筑的地下部分拆分为一个新的室内游戏关卡;
109.步骤s408,该建筑为复杂结构,将该建筑拆分为多个简单建筑以及连接建筑;
110.步骤s409,对于每个简单建筑按照封闭式结构(步骤s405)或开放式结构(步骤s407)相同的方法创建新的室内游戏关卡;
111.步骤s410,优化结束。
112.需要说明的是,根据触发器以及距离阈值这两种方式进行室内游戏关卡加载和卸载,可以选择一种使用,也可以是两种都采用,但配置有优先级顺序。例如触发器触发加载和卸载作为第一优先级,距离阈值判断加载和卸载作为第二优先级,当触发器触发加载和卸载室内游戏关卡没有成功时,再采用距离阈值判断加载和卸载室内游戏关卡。
113.基于上述方法,将大世界的游戏内容化整为零,精细化每个室内游戏关卡的内容,与加载卸载的时机,减少游戏内同时加载的内容,起到降低内存,减少闪退,减少卡顿,优化大世界游戏性能的作用。
114.在本公开的一个实施例中,还提供了一种室内游戏关卡运行方法,方法包括:响应于检测到满足游戏场景中目标室内游戏关卡的加载时机时,加载目标室内游戏关卡;以及响应于检测到满足游戏场景中目标室内游戏关卡的卸载时机时,卸载目标室内游戏关卡;其中,游戏场景中包括多个室内游戏关卡,每一室内游戏关卡配置有对应的加载时机和卸载时机,室内游戏关卡是根据游戏场景中建筑的建筑类型创建的。
115.具体地,前述步骤s101至步骤s104介绍了创建室内游戏关卡的方法,现在对室内游戏关卡的运行做详细介绍。游戏场景中包括多个室内游戏关卡,并且均配置了相应的加载时机和卸载时机,此处就不做过多赘述。
116.在游戏场景中,当检测到满足目标室内游戏关卡的加载时机时,则进行该目标室内游戏关卡的加载过程,即加载对应的建筑内容,使得虚拟对象可以进入该建筑内容进行游戏活动;如果检测到满足目标室内游戏关卡的卸载时机时,则进行该目标室内游戏关卡的卸载过程,将对应的内存释放,提高游戏运行的性能。
117.在本公开的一个实施例中,方法还包括:响应于检测到满足目标室内游戏关卡对应触发器的触发条件时,判断满足目标室内游戏关卡的加载时机和/或卸载时机。
118.加载时机以及卸载时机可以通过触发器来判断。在建筑的建筑类型为封闭式结构时,具体如下:
119.在建筑的建筑类型为封闭式结构时,方法包括:在虚拟对象在游戏场景中移动时,
响应于检测到虚拟对象进入第一触发器对应的第一触发范围时,加载建筑的出入层的建筑内容;以及响应于检测到虚拟对象进入第二触发器对应的第二触发范围时,卸载建筑的出入层的建筑内容。
120.在虚拟对象进入出入层的建筑内容之后,响应于检测到虚拟对象沿着第三触发器对应正方向通过第三触发范围时加载建筑的其它层的建筑内容;或者响应于检测到虚拟对象沿着正方向的逆方向通过第三触发范围时卸载建筑的其它层的建筑内容;其中,其它层包括建筑的出入层以上层和/或出入层以下层。
121.举例来说,有一栋封闭式结构的a建筑,包括地上二层建筑内容,基于一层的建筑内容创建了室内游戏关卡

,该室内游戏关卡为第一类型,配置了第一触发器以及第一触发器对应的第一触发范围,以及第二触发器以及第二触发器对应的第二触发范围;基于二层的建筑内容创建了室内游戏关卡

,该室内游戏关卡为第二类型,配置了第三触发器以及第三触发器对应的第三触发范围。
122.那么在室内游戏关卡运行时,当检测到游戏场景中虚拟对象触碰到了室内游戏关卡

对应的第一触发器的第一触发范围,则加载室内游戏关卡

,若检测到虚拟对象触碰到了室内游戏关卡

对应的第二触发器的第二触发范围,则卸载室内游戏关卡


123.而当虚拟对象进入室内游戏关卡

之后,若检测到虚拟对象基于正方向通过第三触发器的第三触发范围,则加载室内游戏关卡

,此时虚拟对象可以进入室内游戏关卡

;而若检测到虚拟对象基于逆方向通过第三触发器的第三触发范围,则卸载室内游戏关卡


124.在建筑的建筑类型为开放式结构时,方法包括:在虚拟对象在游戏场景中移动时,响应于检测到虚拟对象进入第一触发器对应的第一触发范围时,加载建筑的其它层的建筑内容;或者响应于检测到虚拟对象进入第二触发器对应的第二触发范围时,卸载建筑的其它层的建筑内容;其中,其它层包括建筑的出入层以上层和/或出入层以下层。
125.举例来说,有一栋开放式结构的b建筑,包括地上二层建筑内容,其中一层建筑为开放区域,不需要设置游戏关卡,基于二层的建筑内容创建了室内游戏关卡

,该室内游戏关卡为第一类型,配置了第一触发器以及第一触发器对应的第一触发范围,以及第二触发器以及第二触发器对应的第二触发范围。
126.因此,当虚拟对象进入b建筑后,若虚拟对象触碰到室内游戏关卡

对应第一触发器对应的第一触发范围时,则加载室内游戏关卡

,若虚拟对象触碰到室内游戏关卡

对应第二触发器的第二触发范围时,卸载室内游戏关卡


127.除了采用触发器触发室内游戏关卡的加载和卸载之外,还可以通过距离阈值来进行室内游戏关卡的加载和卸载。
128.在本公开的一个实施例中,配置室内游戏关卡的加载时机,包括:获取虚拟对象的目视距离参数、虚拟对象所处的第一位置以及室内游戏关卡所处的第二位置;在第一位置与第二位置之间的距离差小于目视距离参数时,判断满足目标室内游戏关卡的加载时机。
129.具体而言,当虚拟对象能够目视到室内游戏关卡时,则加载该室内室内游戏关卡。虚拟对象的位置较好确认,可以是虚拟对象的坐标点,而室内游戏关卡可以是将其抽象为一个规则区域,将该规则区域抽象成一个质点,作为室内游戏关卡的位置。
130.通过配置合适的目视距离参数作为加载室内游戏关卡的条件,在检测到虚拟对象
所处的第一位置与室内游戏关卡所处的第二位置之间的距离差小于目视距离参数配置,就加载该室内游戏关卡。
131.需要说明的是,由于虚拟对象在不同的位置目视的距离不同,不同的室内游戏关卡可以配置不同的目视距离参数,进而分别用于加载不同室内游戏关卡的判断。不同的室内游戏关卡例如封闭式建筑的室内游戏关卡以及开放式建筑的室内游戏关卡,或者是不同类型的室内游戏关卡。
132.在本公开的一个实施例中,配置室内游戏关卡的卸载时机,包括:获取室内游戏关卡的保底距离参数;将虚拟对象所处的第一位置与室内游戏关卡所处的第二位置之间的距离差大于保底距离参数配置为卸载时机。
133.与室内游戏关卡的卸载类似,当虚拟对象离开该室内游戏关卡到一定距离之后,则可需要自动卸载。此时则需要配置一个保底距离参数,当虚拟对象所处的第一位置与室内游戏关卡所处的第二位置之间的距离差大于保底距离参数,则启动卸载该室内游戏关卡。
134.图5示意性示出本公开示例性实施例中一种室内游戏关卡生成装置的组成示意图,如图5所示,该室内游戏关卡生成装置500可以包括获取模块501、创建模块502、配置模块503以及遍历模块504。其中:
135.获取模块501,用于获取游戏场景中一建筑的建筑结构信息;
136.创建模块502,用于根据建筑结构信息识别建筑的建筑类型,并基于建筑类型创建建筑的室内游戏关卡;
137.配置模块503,用于基于室内游戏关卡以及建筑结构信息,配置室内游戏关卡的加载时机和卸载时机;
138.遍历模块504,用于遍历游戏场景中的所有建筑,得到游戏场景的所有室内游戏关卡以及室内游戏关卡的加载时机和卸载时机,生成游戏场景对应的游戏关卡。
139.根据本公开的示例性实施例,创建模块502包括识别单元,用于在建筑结构信息满足建筑外立面全封闭且建筑结构简单的第一条件时,确定建筑类型为封闭式结构;在建筑结构信息满足建筑外立面未封闭且建筑结构简单的第二条件时,确定建筑类型为开放式结构;在建筑结构信息不满足第一条件且不满足第二条件时,确定建筑类型为复杂结构。
140.根据本公开的示例性实施例,创建模块502包括创建单元,创建单元用于在建筑类型为封闭式结构时,基于建筑的出入层的建筑内容创建第一类型室内游戏关卡;基于建筑的其它层的建筑内容创建第二类型室内游戏关卡;其中,其它层包括建筑的出入层以上层和/或出入层以下层。
141.根据本公开的示例性实施例,创建单元还用于在建筑类型为开放式结构时,基于建筑的其它层的建筑内容创建第一类型室内游戏关卡;其中,其它层包括建筑的出入层以上层和/或出入层以下层。
142.根据本公开的示例性实施例,创建单元还用于在建筑类型为复杂结构时,将建筑拆分为简单建筑和/或简单建筑之间的连接建筑;其中,简单建筑为封闭式结构或者开放式结构;基于封闭式结构的简单建筑的出入层的建筑内容、开放式结构的简单建筑的其它层的建筑内容创建第一类型室内游戏关卡;基于封闭式结构的简单建筑的其它层的建筑内容创建第二类型室内游戏关卡;和/或基于连接建筑所连接的楼层建筑内容,创建第一类型室
内游戏关卡。
143.根据本公开的示例性实施例,配置模块503包括触发器模块,触发器模块用于配置室内游戏关卡对应的触发器以及触发器的触发条件;其中,触发器用于在检测到满足触发条件时加载和/或卸载室内游戏关卡。
144.根据本公开的示例性实施例,触发器模块还用于在室内游戏关卡为第一类型室内游戏关卡时,为第一类型室内游戏关卡配置第一触发器和第一触发范围;其中,第一触发器用于在检测到虚拟对象进入第一触发范围时加载室内游戏关卡;以及为第一类型室内游戏关卡配置第二触发器和第二触发范围;其中,第二触发器用于在检测到虚拟对象进入第二触发范围时卸载室内游戏关卡。
145.根据本公开的示例性实施例,触发器模块还用于在室内游戏关卡为第二类型室内游戏关卡时,为第二类型室内游戏关卡配置第三触发器、第三触发范围和正方向;其中,第三触发器用于在检测到虚拟对象沿着正方向通过第三触发范围时加载室内游戏关卡,以及在检测到虚拟对象沿着正方向的逆方向通过第三触发范围时卸载室内游戏关卡。
146.根据本公开的示例性实施例,配置模块503包括距离模块,距离模块用于获取虚拟对象的目视距离参数;将虚拟对象所处的第一位置与室内游戏关卡所处的第二位置之间的距离差小于目视距离参数配置为加载时机。
147.根据本公开的示例性实施例,距离模块还用于获取室内游戏关卡的保底距离参数;将虚拟对象所处的第一位置与室内游戏关卡所处的第二位置之间的距离差大于保底距离参数配置为卸载时机。
148.上述的室内游戏关卡生成装置500中各模块的具体细节已经在对应的室内游戏关卡生成方法中进行了详细的描述,因此此处不再赘述。
149.图6示意性示出本公开示例性实施例中一种室内游戏关卡运行装置的组成示意图,如图6所示,该室内游戏关卡运行装置600可以包括加载模块601以及卸载模块602。其中:
150.加载模块601,用于响应于检测到满足游戏场景中目标室内游戏关卡的加载时机时,加载目标室内游戏关卡;以及
151.卸载模块602,用于响应于检测到满足游戏场景中目标室内游戏关卡的卸载时机时,卸载目标室内游戏关卡;
152.其中,游戏场景中包括多个室内游戏关卡,每一室内游戏关卡配置有对应的加载时机和卸载时机,室内游戏关卡是根据游戏场景中建筑的建筑类型创建的。
153.根据本公开的示例性实施例,得到该室内游戏关卡运行装置600还包括触发器检测模块,触发器检测模块用于响应于检测到满足目标室内游戏关卡对应触发器的触发条件时,判断满足目标室内游戏关卡的加载时机和/或卸载时机。
154.根据本公开的示例性实施例,触发器检测模块用于在建筑的建筑类型为封闭式结构时,在虚拟对象在游戏场景中移动时,响应于检测到虚拟对象进入第一触发器对应的第一触发范围时,加载建筑的出入层的建筑内容;以及响应于检测到虚拟对象进入第二触发器对应的第二触发范围时,卸载建筑的出入层的建筑内容。
155.根据本公开的示例性实施例,触发器检测模块还用于在虚拟对象进入出入层的建筑内容之后,响应于检测到虚拟对象沿着第三触发器对应正方向通过第三触发范围时加载
建筑的其它层的建筑内容;或者响应于检测到虚拟对象沿着正方向的逆方向通过第三触发范围时卸载建筑的其它层的建筑内容;其中,其它层包括建筑的出入层以上层和/或出入层以下层。
156.根据本公开的示例性实施例,触发器检测模块还用于在建筑的建筑类型为开放式结构时,在虚拟对象在游戏场景中移动时,响应于检测到虚拟对象进入第一触发器对应的第一触发范围时,加载建筑的其它层的建筑内容;或者响应于检测到虚拟对象进入第二触发器对应的第二触发范围时,卸载建筑的其它层的建筑内容;其中,其它层包括建筑的出入层以上层和/或出入层以下层。
157.根据本公开的示例性实施例,该室内游戏关卡运行装置600还包括距离检测模块,距离检测模块用于获取虚拟对象的目视距离参数、虚拟对象所处的第一位置以及室内游戏关卡所处的第二位置;在第一位置与第二位置之间的距离差小于目视距离参数时,判断满足目标室内游戏关卡的加载时机。
158.根据本公开的示例性实施例,距离检测模块还用于获取室内游戏关卡的保底距离参数、虚拟对象所处的第一位置以及室内游戏关卡所处的第二位置;在第一位置与第二位置之间的距离差大于保底距离参数时,判断满足目标室内游戏关卡的卸载时机。
159.上述的室内游戏关卡运行装置600中各模块的具体细节已经在对应的室内游戏关卡运行方法中进行了详细的描述,因此此处不再赘述。
160.应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
161.在本公开的示例性实施例中,还提供了一种能够实现上述方法的存储介质。图7示意性示出本公开示例性实施例中一种计算机可读存储介质的示意图,如图7所示,描述了根据本公开的实施方式的用于实现上述方法的程序产品700,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如手机上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
162.在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。图8示意性示出本公开示例性实施例中一种电子设备的计算机系统的结构示意图。
163.需要说明的是,图8示出的电子设备的计算机系统800仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
164.如图8所示,计算机系统800包括中央处理单元(central processing unit,cpu)801,其可以根据存储在只读存储器(read-only memory,rom)802中的程序或者从存储部分808加载到随机访问存储器(random access memory,ram)803中的程序而执行各种适当的动作和处理。在ram 803中,还存储有系统操作所需的各种程序和数据。cpu 801、rom 802以及ram 803通过总线804彼此相连。输入/输出(input/output,i/o)接口805也连接至总线804。
165.以下部件连接至i/o接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声器
等的输出部分807;包括硬盘等的存储部分808;以及包括诸如lan(local area network,局域网)卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至i/o接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
166.特别地,根据本公开的实施例,下文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(cpu)801执行时,执行本公开的系统中限定的各种功能。
167.需要说明的是,本公开实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
168.附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
169.描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
170.作为另一方面,本公开还提供了一种计算机可读介质,该计算机可读介质可以是
上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中的方法。
171.应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
172.通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本公开实施方式的方法。
173.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。
174.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

技术特征:
1.一种室内游戏关卡生成方法,其特征在于,所述方法包括:获取游戏场景中一建筑的建筑结构信息;根据所述建筑结构信息识别所述建筑的建筑类型,并基于所述建筑类型创建所述建筑的室内游戏关卡;基于所述室内游戏关卡以及所述建筑结构信息,配置所述室内游戏关卡的加载时机和卸载时机;遍历所述游戏场景中的所有建筑,得到所述游戏场景的所有室内游戏关卡以及室内游戏关卡的加载时机和卸载时机,生成所述游戏场景对应的游戏关卡。2.根据权利要求1所述的室内游戏关卡生成方法,其特征在于,所述基于所述建筑结构信息识别所述建筑的建筑类型,包括:在所述建筑结构信息满足建筑外立面全封闭且建筑结构简单的第一条件时,确定所述建筑类型为封闭式结构;在所述建筑结构信息满足建筑外立面未封闭且建筑结构简单的第二条件时,确定所述建筑类型为开放式结构;在所述建筑结构信息不满足所述第一条件且不满足所述第二条件时,确定所述建筑类型为复杂结构。3.根据权利要求2所述的室内游戏关卡生成方法,其特征在于,在所述建筑类型为所述封闭式结构时,所述基于所述建筑类型创建所述建筑的室内游戏关卡,包括:基于所述建筑的出入层的建筑内容创建第一类型室内游戏关卡;基于所述建筑的其它层的建筑内容创建第二类型室内游戏关卡;其中,所述其它层包括所述建筑的出入层以上层和/或出入层以下层。4.根据权利要求2所述的室内游戏关卡生成方法,其特征在于,在所述建筑类型为所述开放式结构时,所述基于所述建筑类型创建所述建筑的室内游戏关卡,包括:基于所述建筑的其它层的建筑内容创建第一类型室内游戏关卡;其中,所述其它层包括所述建筑的出入层以上层和/或出入层以下层。5.根据权利要求2所述的室内游戏关卡生成方法,其特征在于,在所述建筑类型为所述复杂结构时,所述基于所述建筑类型创建所述建筑的室内游戏关卡,包括:将所述建筑拆分为简单建筑和/或所述简单建筑之间的连接建筑;其中,所述简单建筑为封闭式结构或者开放式结构;基于封闭式结构的简单建筑的出入层的建筑内容、开放式结构的简单建筑的其它层的建筑内容创建第一类型室内游戏关卡;基于封闭式结构的简单建筑的其它层的建筑内容创建第二类型室内游戏关卡;和/或基于所述连接建筑所连接的楼层建筑内容,创建第一类型室内游戏关卡。6.根据权利要求1所述的室内游戏关卡生成方法,其特征在于,所述配置所述室内游戏关卡的加载时机和卸载时机包括:配置所述室内游戏关卡对应的触发器以及所述触发器的触发条件;其中,所述触发器用于在检测到满足所述触发条件时加载和/或卸载所述室内游戏关卡。7.根据权利要求6所述的室内游戏关卡生成方法,其特征在于,在所述室内游戏关卡为第一类型室内游戏关卡时,所述配置所述室内游戏关卡对应的触发器以及所述触发器的触
发条件,包括:为所述第一类型室内游戏关卡配置第一触发器和第一触发范围;其中,所述第一触发器用于在检测到虚拟对象进入所述第一触发范围时加载所述室内游戏关卡;以及为所述第一类型室内游戏关卡配置第二触发器和第二触发范围;其中,所述第二触发器用于在检测到虚拟对象进入所述第二触发范围时卸载所述室内游戏关卡。8.根据权利要求6所述的室内游戏关卡生成方法,其特征在于,在所述室内游戏关卡为第二类型室内游戏关卡时,所述配置所述室内游戏关卡对应的触发器以及所述触发器的触发条件,包括:为所述第二类型室内游戏关卡配置第三触发器、第三触发范围和正方向;其中,所述第三触发器用于在检测到虚拟对象沿着所述正方向通过所述第三触发范围时加载所述室内游戏关卡,以及在检测到虚拟对象沿着所述正方向的逆方向通过所述第三触发范围时卸载所述室内游戏关卡。9.根据权利要求1所述的室内游戏关卡生成方法,其特征在于,所述配置所述室内游戏关卡的加载时机,包括:获取虚拟对象的目视距离参数;将虚拟对象所处的第一位置与所述室内游戏关卡所处的第二位置之间的距离差小于所述目视距离参数配置为所述加载时机。10.根据权利要求1所述的室内游戏关卡生成方法,其特征在于,所述配置所述室内游戏关卡的卸载时机,包括:获取所述室内游戏关卡的保底距离参数;将虚拟对象所处的第一位置与所述室内游戏关卡所处的第二位置之间的距离差大于所述保底距离参数配置为所述卸载时机。11.一种室内游戏关卡运行方法,其特征在于,所述方法包括:响应于检测到满足游戏场景中目标室内游戏关卡的加载时机时,加载所述目标室内游戏关卡;以及响应于检测到满足游戏场景中目标室内游戏关卡的卸载时机时,卸载所述目标室内游戏关卡;其中,所述游戏场景中包括虚拟对象和多个室内游戏关卡,每一室内游戏关卡配置有对应的加载时机和卸载时机,所述室内游戏关卡是根据所述游戏场景中建筑的建筑类型创建的。12.根据权利要求11所述的室内游戏关卡运行方法,其特征在于,所述方法还包括:响应于检测到满足目标室内游戏关卡对应触发器的触发条件时,判断满足所述目标室内游戏关卡的加载时机和/或卸载时机。13.根据权利要求12所述的室内游戏关卡运行方法,其特征在于,在所述建筑的建筑类型为封闭式结构时,所述方法包括:在虚拟对象在所述游戏场景中移动时,响应于检测到所述虚拟对象进入第一触发器对应的第一触发范围时,加载所述建筑的出入层的建筑内容;以及响应于检测到所述虚拟对象进入第二触发器对应的第二触发范围时,卸载所述建筑的出入层的建筑内容。
14.根据权利要求13所述的室内游戏关卡运行方法,其特征在于,所述方法还包括:在所述虚拟对象进入所述出入层的建筑内容之后,响应于检测到所述虚拟对象沿着第三触发器对应正方向通过第三触发范围时加载所述建筑的其它层的建筑内容;或者响应于检测到所述虚拟对象沿着所述正方向的逆方向通过所述第三触发范围时卸载所述建筑的其它层的建筑内容;其中,所述其它层包括所述建筑的出入层以上层和/或出入层以下层。15.根据权利要求12所述的室内游戏关卡运行方法,其特征在于,在所述建筑的建筑类型为开放式结构时,所述方法包括:在虚拟对象在游戏场景中移动时,响应于检测到所述虚拟对象进入第一触发器对应的第一触发范围时,加载所述建筑的其它层的建筑内容;或者响应于检测到所述虚拟对象进入第二触发器对应的第二触发范围时,卸载所述建筑的其它层的建筑内容;其中,所述其它层包括所述建筑的出入层以上层和/或出入层以下层。16.根据权利要求11所述的室内游戏关卡运行方法,其特征在于,所述方法还包括:获取所述虚拟对象的目视距离参数、所述虚拟对象所处的第一位置以及所述室内游戏关卡所处的第二位置;在所述第一位置与所述第二位置之间的距离差小于所述目视距离参数时,判断满足所述目标室内游戏关卡的加载时机。17.根据权利要求11所述的室内游戏关卡运行方法,其特征在于,所述方法还包括:获取所述室内游戏关卡的保底距离参数、所述虚拟对象所处的第一位置以及所述室内游戏关卡所处的第二位置;在所述第一位置与所述第二位置之间的距离差大于所述保底距离参数时,判断满足所述目标室内游戏关卡的卸载时机。18.一种室内游戏关卡生成装置,其特征在于,包括:获取模块,用于获取游戏场景中一建筑的建筑结构信息;创建模块,用于根据所述建筑结构信息识别所述建筑的建筑类型,并基于所述建筑类型创建所述建筑的室内游戏关卡;配置模块,用于基于所述室内游戏关卡以及所述建筑结构信息,配置所述室内游戏关卡的加载时机和卸载时机;遍历模块,用于遍历所述游戏场景中的所有建筑,得到所述游戏场景的所有室内游戏关卡以及室内游戏关卡的加载时机和卸载时机,生成所述游戏场景对应的游戏关卡。19.一种室内游戏关卡运行装置,其特征在于,包括:加载模块,用于响应于检测到满足游戏场景中目标室内游戏关卡的加载时机时,加载所述目标室内游戏关卡;以及卸载模块,用于响应于检测到满足游戏场景中目标室内游戏关卡的卸载时机时,卸载所述目标室内游戏关卡;其中,所述游戏场景中包括多个室内游戏关卡,每一室内游戏关卡配置有对应的加载时机和卸载时机,所述室内游戏关卡是根据所述游戏场景中建筑的建筑类型创建的。20.一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现
如权利要求1至10任一项所述的室内游戏关卡生成方法,或者11至17任一项所述的室内游戏关卡运行方法。21.一种电子设备,其特征在于,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至10任一项所述的室内游戏关卡生成方法,或者11至17任一项所述的室内游戏关卡运行方法。

技术总结
本公开涉及计算机技术领域,具体涉及一种室内游戏关卡生成方法、室内游戏关卡生成装置、存储介质及电子设备。该室内游戏关卡生成方法包括:获取游戏场景中一建筑的建筑结构信息;根据建筑结构信息识别建筑的建筑类型,并基于建筑类型创建建筑的室内游戏关卡;基于室内游戏关卡以及建筑结构信息,配置室内游戏关卡的加载时机和卸载时机;遍历游戏场景中的所有建筑,得到游戏场景的所有室内游戏关卡以及室内游戏关卡的加载时机和卸载时机,生成游戏场景对应的游戏关卡。本公开提供的室内游戏关卡生成方法能够解决游戏加载造成的设备性能差的问题。差的问题。差的问题。


技术研发人员:陈施旅
受保护的技术使用者:网易(杭州)网络有限公司
技术研发日:2023.05.23
技术公布日:2023/8/21
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐