CN112619153A - 一种游戏副本创建方法、装置、存储介质及计算设备 - Google Patents

一种游戏副本创建方法、装置、存储介质及计算设备 Download PDF

Info

Publication number
CN112619153A
CN112619153A CN202011559924.7A CN202011559924A CN112619153A CN 112619153 A CN112619153 A CN 112619153A CN 202011559924 A CN202011559924 A CN 202011559924A CN 112619153 A CN112619153 A CN 112619153A
Authority
CN
China
Prior art keywords
map data
data
source
game copy
game
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.)
Pending
Application number
CN202011559924.7A
Other languages
English (en)
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.)
Beijing Bingfeng Mutual Entertainment Technology Co ltd
Original Assignee
Beijing Bingfeng Mutual Entertainment Technology 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 Beijing Bingfeng Mutual Entertainment Technology Co ltd filed Critical Beijing Bingfeng Mutual Entertainment Technology Co ltd
Priority to CN202011559924.7A priority Critical patent/CN112619153A/zh
Publication of CN112619153A publication Critical patent/CN112619153A/zh
Pending legal-status Critical Current

Links

Images

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/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • 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/80Special adaptations for executing a specific game genre or game mode
    • A63F13/822Strategy games; Role-playing games
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6009Methods for processing data by generating or executing the game program for importing or creating game content, e.g. authoring tools during game development, adapting content to different platforms, use of a scripting language to create content
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/807Role playing or strategy games

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明提供了一种游戏副本创建方法、装置、存储介质及计算设备,该方法包括:获取游戏地图的源地图数据,为源地图数据建立数据引用;响应于游戏副本创建指令,获取源地图数据的数据引用、及待创建游戏副本所需的与源地图数据不同的地图数据;基于数据引用和与源地图数据不同的地图数据创建游戏副本;其中,游戏副本中数据引用被调用时读取数据引用对应的源地图数据。本发明在创建游戏副本时,无需拷贝源地图数据中所有的地图数据,而是拷贝源地图数据的数据引用,可以避免将源地图数据全部拷贝至游戏副本而后续有些源地图数据不使用的情况,有效提高了创建的游戏副本的性能。而且,还节约了游戏副本占用的内存空间,提高了创建游戏副本的效率。

Description

一种游戏副本创建方法、装置、存储介质及计算设备
技术领域
本发明涉及游戏数据处理技术领域,特别是一种游戏副本创建方法、装置、存储介质及计算设备。
背景技术
游戏副本是游戏中虚拟世界的一部分,由一组独立的地图场景组成,只有玩家以及与玩家组成的团队可以进入同一个副本,一个副本中的玩家可以不受其他玩家干扰地进行探索、冒险或完成任务,不同的玩家或团队看不到彼此。现有技术在创建游戏副本时需要对游戏中源地图进行复制,这种复制是全方位的,包括源地图的寻路网格、高度图、凸包及刷怪配置等资源数据的复制,如图1所示的游戏副本(副本1、副本2……副本N)全复制源地图的资源数据。因此,现有方案新建一个副本相当于重新生成一个地图对象。
但是,因为所有游戏副本是全拷贝源地图的所有数据,所以游戏副本占用内存特别大,如果同时存在的游戏副本数量特别多,很容易导致系统内存吃紧。例如,全拷贝1张地图大概占用内存是4M,如果同时创建8000个副本,那么需要4M*8000=32G的内存。另外,虽然每一个游戏副本在创建时需要拷贝所有的源地图数据,但有些拷贝后的源地图数据并不一定在本副本运行过程中使用到,从而使得创建的游戏副本的性能较低,也极大浪费了内存空间。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的游戏副本创建方法、装置、存储介质及计算设备,能够避免将源地图数据全部拷贝至游戏副本而后续有些源地图数据不使用的情况,有效提高了创建的游戏副本的性能,而且可以节约游戏副本占用的内存空间,提高创建游戏副本的效率。
根据本发明实施例的一方面,提供了一种游戏副本创建方法,该方法包括:
获取游戏地图的源地图数据,为所述源地图数据建立数据引用;
响应于游戏副本创建指令,获取所述源地图数据的数据引用、及待创建游戏副本所需的与所述源地图数据不同的地图数据;
基于所述数据引用和与所述源地图数据不同的地图数据创建游戏副本;其中,所述游戏副本中数据引用被调用时读取所述数据引用对应的源地图数据。
可选地,所述源地图数据包含网格数据、高度图数据、凸包数据中至少一项。
可选地,获取待创建游戏副本所需的与所述源地图数据不同的地图数据,包括:
确定与待创建游戏副本所需地图数据相关的源地图数据的数据引用;
从所述源地图数据中获取与确定的数据引用对应的源地图数据;
对获取的所述源地图数据进行数据更改,将更改后的地图数据保存至本地;
其中,更改后的地图数据为待创建游戏副本所需的与所述源地图数据不同的地图数据。
可选地,若所述源地图数据包含网格数据,所述确定与待创建游戏副本所需地图数据相关的源地图数据的数据引用,包括:
获取待创建游戏副本所需地图数据相关的网格数据的网格坐标信息;
基于所述网格坐标信息确定相应网格数据对应的源地图数据的数据引用,其中,所述源地图数据的数据引用对应多个网格坐标信息。
可选地,基于所述数据引用和与所述源地图数据不同的地图数据创建游戏副本之后,还包括:
响应于对所述游戏副本引用的地图数据的更改指令,确定待更改地图数据的数据引用;
从所述源地图数据中获取与确定的数据引用对应的源地图数据;
对获取的所述源地图数据进行数据更改,将更改后的地图数据保存至本地。
可选地,为所述源地图数据建立数据引用,包括:将所述源地图数据划分为不同地图数据块,为每个地图数据块建立数据引用;
从所述源地图数据中获取与确定的数据引用对应的源地图数据,对获取的所述源地图数据进行数据更改,将更改后的地图数据保存至本地,包括:从所述源地图数据中获取与确定的数据引用对应的地图数据块,对获取的所述地图数据块中的地图数据进行更改,将更改后的地图数据所属整个地图数据块保存至本地。
可选地,将所述源地图数据划分为不同地图数据块之后,还包括:针对所述源地图数据中的地图数据块创建块数组,所述块数组包含多个数据单元,一个数据单元用于存储对应的一个地图数据块;
对获取的所述地图数据块中的地图数据进行更改,将更改后的地图数据所属整个地图数据块保存至本地,包括:对获取的所述地图数据块中的地图数据进行更改,将更改后的地图数据所属整个地图数据块保存至对应的数据单元中。
可选地,所述方法还包括:
响应于对游戏副本中地图数据的读取指令,判断本地是否包含待读取地图数据;
若是,在所述游戏副本中直接读取所述待读取地图数据;
若否,查找所述待读取地图数据的数据引用,通过调用查找到的数据引用从所述源地图数据中读取所述待读取地图数据。
根据本发明实施例的另一方面,还提供了一种游戏副本创建装置,包括:
建立模块,适于获取游戏地图的源地图数据,为所述源地图数据建立数据引用;
获取模块,适于响应于游戏副本创建指令,获取所述源地图数据的数据引用、及待创建游戏副本所需的与所述源地图数据不同的地图数据;
创建模块,适于基于所述数据引用和与所述源地图数据不同的地图数据创建游戏副本;其中,所述游戏副本中数据引用被调用时读取所述数据引用对应的源地图数据。
根据本发明实施例的再一方面,还提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序代码,当所述计算机程序代码在计算设备上运行时,导致所述计算设备执行上文任意实施例的游戏副本创建方法。
根据本发明实施例的又一方面,还提供了一种计算设备,包括:处理器;存储有计算机程序代码的存储器;当所述计算机程序代码被所述处理器运行时,导致所述计算设备执行上文任意实施例的游戏副本创建方法。
本发明实施例为源地图数据建立数据引用,在创建游戏副本时通过获取源地图数据的数据引用,并获取待创建游戏副本所需的与源地图数据不同的地图数据,可基于数据引用和与源地图数据不同的地图数据创建游戏副本,进而后续运行游戏副本时通过调用数据引用可以方便地读取到相应的源地图数据。由此,本发明实施例在创建游戏副本时,无需拷贝源地图数据中所有的地图数据,而是基于源地图数据的数据引用和待创建游戏副本所需的与源地图数据不同的地图数据创建游戏副本,可以避免将源地图数据全部拷贝至游戏副本但后续有些源地图数据不使用的情况,有效提高了创建的游戏副本的性能。而且,本发明实施例还节约了游戏副本占用的内存空间,提高了创建游戏副本的效率。通过测试实验得出,采用本发明实施例创建的游戏副本可以减少80%以上的内存空间。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了现有技术中创建游戏副本的游戏资源的布局示意图;
图2示出了根据本发明一实施例的游戏副本创建方法的流程示意图;
图3示出了根据本发明一实施例的创建游戏副本的游戏资源的布局示意图;
图4示出了根据本发明一实施例的为地图数据块创建的块数组的结构示意图;
图5示出了根据本发明一实施例的更改后地图数据块在块数组中的存储结构示意图;
图6示出了根据本发明一实施例的游戏副本创建装置的结构示意图;
图7示出了根据本发明另一实施例的游戏副本创建装置的结构示意图;
图8示出了根据本发明再一实施例的游戏副本创建装置的结构示意图;
图9示出了根据本发明又一实施例的游戏副本创建装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为解决上述技术问题,本发明实施例提供了一种游戏副本创建方法。图2示出了根据本发明一实施例的游戏副本创建方法的流程示意图,参见图2,游戏副本创建方法可以包括步骤S202至步骤S206。
步骤S202,获取游戏地图的源地图数据,为源地图数据建立数据引用。
步骤S204,响应于游戏副本创建指令,获取源地图数据的数据引用、及待创建游戏副本所需的与源地图数据不同的地图数据。
本发明实施例的游戏副本通过源地图数据的数据引用连到源地图的地图数据,数据引用可以作为源地图数据的索引。因此,后续可以通过调用数据引用方便地读取到数据引用对应的源地图数据。
步骤S206,基于数据引用和与源地图数据不同的地图数据创建游戏副本,其中,游戏副本中数据引用被调用时读取数据引用对应的源地图数据。
本发明实施例为源地图数据建立数据引用,在创建游戏副本时通过获取源地图数据的数据引用,并获取待创建游戏副本所需的与源地图数据不同的地图数据,可基于数据引用和与源地图数据不同的地图数据创建游戏副本,进而后续运行游戏副本时通过调用数据引用可以方便地读取到相应的源地图数据。由此,本发明实施例在创建游戏副本时,无需拷贝源地图数据中所有的地图数据,而是基于源地图数据的数据引用和待创建游戏副本所需的与源地图数据不同的地图数据创建游戏副本,可以避免将源地图数据全部拷贝至游戏副本但后续有些源地图数据不使用的情况,有效提高了创建的游戏副本的性能。而且,本发明实施例还节约了游戏副本占用的内存空间,提高了创建游戏副本的效率。通过测试实验得出,采用本发明实施例创建的游戏副本可以减少80%以上的内存空间。
本发明实施例的源地图数据可以包含网格数据、高度图数据、凸包数据等等中至少一项地图数据。其中,网格数据是用于描述地图图形的一种结构表达,在游戏副本地图的内存占用中,网格数据占用的内存较多,而且游戏地图越大,游戏地图中网格数据所占的比重也越大,网格数据在大部分情况下也不会轻易更改。高度图数据是描述地图点高度的一种结构表达,高度图数据在大部分情况下也不会轻易更改。凸包数据是用于描述地图上静物所在碰撞体积的一种结构表达,凸包数据在大部分情况下也不会轻易更改。当然,源地图数据中还包含了其他类型的地图数据,本申请实施例对此不作具体限定。
本发明实施例在创建游戏副本时,无需拷贝源地图数据中所有的地图数据,而是拷贝源地图数据的数据引用,即创建的不同游戏副本可以通过调用数据引用的方式共享源地图数据,特别是对于占用内存较多的网格数据,能够有效提高游戏副本创建性能并节约游戏副本占用内存大。
在本发明一实施例中,源地图数据对应有多个数据引用,可以根据源地图数据的所有数据引用创建游戏副本。在执行步骤S202时,响应于游戏副本创建指令,可以获取源地图数据的各数据引用,即拷贝源地图数据的所有数据引用。进而,后续基于获取的所有数据引用创建游戏副本。
在本发明另一实施例中,如果明确了待创建的游戏副本需要使用源地图数据中某部分的地图数据,那么还可以根据待创建的游戏副本需要用到的地图数据对应的源地图数据的数据引用创建游戏副本,即拷贝源地图数据包含的待创建游戏副本需要用到的部分地图数据的数据引用。进而,后续可以基于获取的部分数据引用创建游戏副本。
具体在执行步骤S202时,响应于游戏副本的创建指令,先确定待创建的游戏副本所需的目标地图数据。然后,获取源地图数据中包含的目标地图数据的数据引用。该实施例中,目标地图数据即待创建游戏副本使用到的地图数据,例如,目标地图数据为待创建游戏副本中使用的源地图数据中包含的一个或多个地图场景的地图数据,则可以获取与相应地图场景对应的源地图数据的数据引用。进而后续基于获取的相应地图场景对应的源地图数据的数据引用创建游戏副本。
本发明实施例通过从源地图数据中获取待创建游戏副本所使用目标地图数据对应的源地图数据的数据引用,并基于获取的部分数据引用创建游戏副本,从而可以进一步地节约游戏副本占用的内存空间,提高了创建游戏副本的效率。
继续参见上文步骤S202,在本发明一实施例中,获取待创建游戏副本所需的与源地图数据不同的地图数据时,可以对源地图数据相关的地图数据进行更改,从而得到待创建游戏副本所需的地图数据。首先,确定与待创建游戏副本所需地图数据相关的源地图数据的数据引用。然后,从源地图数据中获取与确定的数据引用对应的源地图数据。进而,对获取的源地图数据进行数据更改,并将更改后的地图数据保存至本地。这里更改后的地图数据是待创建游戏副本所需的与源地图数据不同的地图数据,可以依据待创建游戏副本的实际需求对源地图数据进行更改。
本发明实施例的游戏副本通过源地图数据的数据引用连到源地图数据,数据引用可以作为源地图数据的索引信息。因此,根据数据引用可以从源地图数据中获取到数据引用对应的源地图数据。通常情况下游戏副本所需的与源地图数据不同的地图数据可以通过对源地图数据进行更改得到,因此可将更改后的地图数据保存至本地,并作为游戏副本的本地地图数据。
在可选实施例中,若源地图数据包含网格数据,且源地图数据的数据引用对应多个网格坐标信息。在确定与待创建游戏副本所需地图数据相关的源地图数据的数据引用时,可以先获取待创建游戏副本所需地图数据相关的网格数据的网格坐标信息,然后基于网格坐标信息确定相应网格数据对应的源地图数据的数据引用。
在本发明一实施例中,在执行步骤S206基于数据引用和与源地图数据不同的地图数据创建游戏副本之后,若需要对游戏副本引用的源地图数据进行更改,还可以对源地图数据采用写延迟部分拷贝机制,在对游戏副本引用的源地图数据更改后,将更改后的地图数据直接保存至运行游戏副本的服务器本地,即对源地图数据中部分地图数据延迟拷贝至游戏副本。具体的,响应于对游戏副本引用的地图数据的更改指令,确定待更改地图数据的数据引用。然后从源地图数据中获取与确定的数据引用对应的源地图数据。进而对获取的源地图数据进行数据更改,将更改后的地图数据保存至本地。
本发明实施例以图3为例对游戏副本创建过程进行介绍。
该实施例的游戏地图中的源地图数据包含网格数据、高度图数据、凸包数据等。例如,对于网格数据可建立网格数据的网格数据引用并保存,响应于游戏副本创建指令,可以从源地图中获取网格数据引用并拷贝至游戏副本。对于游戏副本中所需的与源地图中网格数据不一样的网格数据,可以在对源地图的网格数据更改后,将更改后网格数据保存至游戏副本所在服务器本地。从而基于拷贝的网格数据引用和保存至本地的地图数据创建游戏副本。
该实施例创建的游戏副本可以是图3中的副本1、副本2……副本N,且可以同时创建多个游戏副本。创建的多个游戏副本由于无需拷贝所有源地图数据,而是拷贝源地图数据的数据引用以及部分地图数据,因此,同时创建多个游戏副本也不会占用很大的内存空间。
另外,在创建游戏副本时,还可以将其他的地图相关数据拷贝至游戏副本,如怪物控制器、怪物控制接口等。怪物控制器是用于控制地图上怪物出生、死亡的逻辑单元。怪物控制接口可以是控制怪物行为的动作接口,本发明实施对创建游戏副本所使用到的数据不作具体限定。
在本发明实施例中,若同时创建多个游戏副本,还可以通过创建多个工作线程来同时创建多个游戏副本,例如,可以通过一个线程创建一个游戏副本,且通过相应的线程拷贝源地图数据的数据引用。本发明实施例采用多个工作线程创建游戏副本,可以使得各游戏副本之间的创建过程互不影响,且能够同时共享源地图数据,从而有效地提高了游戏副本的创建效率。
另外,本发明实施例创建的游戏副本可以是单机副本、组队副本、野外地图副本等等,其中,单机副本只允许一个玩家进入。组队副本是多人组队形成一个阵营,这类玩法需要同步其他玩家的状态、怪物行为等。野外地图副本会根据具体战斗服务器压测算出一个场景可以承载多少玩家,且在玩家离开副本后副本不重置。本发明实施对创建的游戏副本的类型不作具体限定。
在本发明实施例中,在为源地图数据建立数据引用时,还可以将源地图数据划分为不同地图数据块,从而为每个地图数据块建立数据引用。
在该实施例中,在从源地图数据中获取与确定的数据引用对应的源地图数据时,可以从源地图数据中获取与确定的数据引用对应的地图数据块,进而对获取的地图数据块中的地图数据进行更改,并将更改后的地图数据所属整个地图数据块保存至本地。由此本发明实施例以地图数据块为单位将更改的地图数据拷贝至游戏副本。
在一具体实施例中,源地图数据包含网格数据,将整个源地图的地图网格按块划分,划分为不同的网格块。例如,整个源地图网格大小为1024*1024,设置需划分的网格块的大小为128*128,因此,可以划分出1024*1024/(128*128)=64个网格块。并且,每个网格块均具有相应的数据引用(即块索引),各网格块包含有多个网格,每个网格具有网格坐标,一个网格块的数据引用可对应多个网格坐标。
在该实施例中,若需要对游戏副本引用的网格块中的某网格进行更改,可以先获取待更改网格的网格坐标,然后查找到网格坐标对应的块索引,从而可以根据块索引确定出相应的网格块,进而可以将待更改网格所属网格块整个拷贝至游戏副本中,并在游戏副本中根据待更改网格的坐标对待更改网格的网格数据进行更改。
本发明一可选实施例中,在将源地图数据划分为不同地图数据块之后,还可以针对源地图数据中的地图数据块创建块数组,且创建的块数组可以包含多个数据单元,一个数据单元用于存储对应的一个地图数据块。进而在对获取的地图数据块中的地图数据进行更改后,可将更改后的地图数据所属整个地图数据块保存至对应的数据单元中。
假设源地图网格大小为1024*1024,且划分出的网格块大小为128*128,即源地图的地图网格划分为64个网格块。如图4所示,块数组初始时针对64个网格块中各网格块的数据单元均指向空(NULL),当需要对某网格进行更改时,如待更改网格的网格坐标为(m,n),可以通过公式(n/128)*(1024/128)+m/128计算得到块索引,当然,还可以通过位运算方式得到块索引,本发明实施例对此不作具体限定。进而,将块索引对应的整个网格块拷贝至游戏副本中对应的数据单元,并在游戏副本中根据待更改网格的坐标(m,n)对待更改网格的网格数据进行更改,更改后网格数据存储结构如图5所示。
在本发明实施例中,在运行游戏副本过程中,若要读取游戏副本的地图数据,对于本地保存的地图数据可以直接进行读取,对于引用的源地图数据则可以通过调用数据引用读取相应的地图数据。
具体的,响应于对游戏副本中地图数据的读取指令,首先判断游戏副本所在服务器本地是否包含待读取地图数据。如果游戏副本所在服务器本地包含待读取地图数据,直接读取待读取地图数据。如果游戏副本所在服务器本地不包含待读取地图数据,可以先查找待读取地图数据的数据引用,然后通过调用查找到的数据引用从源地图数据中读取待读取地图数据。
例如,响应于对游戏副本中网格数据的读取指令,判断游戏副本所在服务器本地是否包含待读取网格数据,若游戏副本所在服务器本地不包含待读取网格数据,则可以获取待读取网格数据的网格坐标,然后确定网格坐标对应的网格块的数据引用,进而调用数据引用从源地图数据中读取相应的网格数据。由此,本发明实施可通过网格坐标和数据引用方便地读取到源地图数据中的网格数据,从而可以在提高游戏副本性能,节约游戏副本占用内存空间的基础上,保证较高的地图数据读取效率。
基于同一发明构思,本发明实施例还提供了一种游戏副本创建装置。用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6示出了根据本发明一实施例的游戏副本创建装置的结构示意图,参见图6,游戏副本创建装置包括建立模块610、获取模块620和第一创建模块630。
建立模块610,适于获取游戏地图的源地图数据,为源地图数据建立数据引用。
获取模块620,适于响应于游戏副本创建指令,获取源地图数据的数据引用、及待创建游戏副本所需的与源地图数据不同的地图数据。
第一创建模块630,适于基于数据引用和与源地图数据不同的地图数据创建游戏副本;其中,游戏副本中数据引用被调用时读取数据引用对应的源地图数据。
在本发明一实施例中,源地图数据包含网格数据、高度图数据、凸包数据等中至少一项地图数据。
在本发明一实施例中,获取模块620还适于,确定与待创建游戏副本所需地图数据相关的源地图数据的数据引用;从源地图数据中获取与确定的数据引用对应的源地图数据;对获取的源地图数据进行数据更改,将更改后的地图数据保存至本地;其中,更改后的地图数据为待创建游戏副本所需的与源地图数据不同的地图数据。
在本发明一实施例中,获取模块620还适于,若源地图数据包含网格数据,获取待创建游戏副本所需地图数据相关的网格数据的网格坐标信息;基于网格坐标信息确定相应网格数据对应的源地图数据的数据引用,其中,源地图数据的数据引用对应多个网格坐标信息。
参见图7,在本发明一实施例中,上文图6所示实施例的游戏副本创建装置还包括更改模块640。更改模块640适于,在第一创建模块630基于数据引用和与源地图数据不同的地图数据创建游戏副本之后,响应于对游戏副本引用的地图数据的更改指令,确定待更改地图数据的数据引用;从源地图数据中获取与确定的数据引用对应的源地图数据;对获取的源地图数据进行数据更改,将更改后的地图数据保存至本地。
在本发明一实施例中,建立模块610还适于将源地图数据划分为不同地图数据块,为每个地图数据块建立数据引用。
更改模块640还适于,从源地图数据中获取与确定的数据引用对应的地图数据块,对获取的地图数据块中的地图数据进行更改,将更改后的地图数据所属整个地图数据块保存至本地。
参见图8,在本发明一实施例中,上文图7所示实施例的游戏副本创建装置还包括第二创建模块650。第二创建模块650适于在建立模块610将源地图数据划分为不同地图数据块之后,针对源地图数据中的地图数据块创建块数组,块数组包含多个数据单元,一个数据单元用于存储对应的一个地图数据块。
更改模块640还适于,对获取的地图数据块中的地图数据进行更改,将更改后的地图数据所属整个地图数据块保存至对应的数据单元中。
参见图9,在本发明一实施例中,上文图6所示实施例的游戏副本创建装置还包括读取模块660。读取模块660适于,响应于对游戏副本中地图数据的读取指令,判断本地是否包含待读取地图数据;若本地包含待读取地图数据,在游戏副本中直接读取待读取地图数据;若本地不包含待读取地图数据,查找待读取地图数据的数据引用,通过调用查找到的数据引用从源地图数据中读取待读取地图数据。
基于同一发明构思,本发明实施例还提供了一种计算机存储介质,计算机存储介质存储有计算机程序代码,当计算机程序代码在计算设备上运行时,导致计算设备执行上文任意实施例的游戏副本创建方法。
基于同一发明构思,本发明实施例还提供了一种计算设备,包括:处理器;存储有计算机程序代码的存储器;当计算机程序代码被处理器运行时,导致计算设备执行上文任意实施例的游戏副本创建方法。
所属领域的技术人员可以清楚地了解到,上述描述的装置、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,为简洁起见,在此不另赘述。
另外,在本发明各个实施例中的各功能单元可以物理上相互独立,也可以两个或两个以上功能单元集成在一起,还可以全部功能单元都集成在一个处理单元中。上述集成的功能单元既可以采用硬件的形式实现,也可以采用软件或者固件的形式实现。
本领域普通技术人员可以理解:所述集成的功能单元如果以软件的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,其包括若干指令,用以使得一台计算设备(例如个人计算机,服务器,或者网络设备等)在运行所述指令时执行本发明各实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM)、随机存取存储器(RAM),磁碟或者光盘等各种可以存储程序代码的介质。
或者,实现前述方法实施例的全部或部分步骤可以通过程序指令相关的硬件(诸如个人计算机,服务器,或者网络设备等的计算设备)来完成,所述程序指令可以存储于一计算机可读取存储介质中,当所述程序指令被计算设备的处理器执行时,所述计算设备执行本发明各实施例所述方法的全部或部分步骤。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:在本发明的精神和原则之内,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案脱离本发明的保护范围。

Claims (11)

1.一种游戏副本创建方法,其特征在于,包括:
获取游戏地图的源地图数据,为所述源地图数据建立数据引用;
响应于游戏副本创建指令,获取所述源地图数据的数据引用、及待创建游戏副本所需的与所述源地图数据不同的地图数据;
基于所述数据引用和与所述源地图数据不同的地图数据创建游戏副本;其中,所述游戏副本中数据引用被调用时读取所述数据引用对应的源地图数据。
2.根据权利要求1所述的方法,其特征在于,所述源地图数据包含网格数据、高度图数据、凸包数据中至少一项。
3.根据权利要求1所述的方法,其特征在于,获取待创建游戏副本所需的与所述源地图数据不同的地图数据,包括:
确定与待创建游戏副本所需地图数据相关的源地图数据的数据引用;
从所述源地图数据中获取与确定的数据引用对应的源地图数据;
对获取的所述源地图数据进行数据更改,将更改后的地图数据保存至本地;
其中,更改后的地图数据为待创建游戏副本所需的与所述源地图数据不同的地图数据。
4.根据权利要求3所述的方法,其特征在于,若所述源地图数据包含网格数据,所述确定与待创建游戏副本所需地图数据相关的源地图数据的数据引用,包括:
获取待创建游戏副本所需地图数据相关的网格数据的网格坐标信息;
基于所述网格坐标信息确定相应网格数据对应的源地图数据的数据引用,其中,所述源地图数据的数据引用对应多个网格坐标信息。
5.根据权利要求1所述的方法,其特征在于,基于所述数据引用和与所述源地图数据不同的地图数据创建游戏副本之后,还包括:
响应于对所述游戏副本引用的地图数据的更改指令,确定待更改地图数据的数据引用;
从所述源地图数据中获取与确定的数据引用对应的源地图数据;
对获取的所述源地图数据进行数据更改,将更改后的地图数据保存至本地。
6.根据权利要求3或5所述的方法,其特征在于,
为所述源地图数据建立数据引用,包括:将所述源地图数据划分为不同地图数据块,为每个地图数据块建立数据引用;
从所述源地图数据中获取与确定的数据引用对应的源地图数据,对获取的所述源地图数据进行数据更改,将更改后的地图数据保存至本地,包括:从所述源地图数据中获取与确定的数据引用对应的地图数据块,对获取的所述地图数据块中的地图数据进行更改,将更改后的地图数据所属整个地图数据块保存至本地。
7.根据权利要求6所述的方法,其特征在于,
将所述源地图数据划分为不同地图数据块之后,还包括:针对所述源地图数据中的地图数据块创建块数组,所述块数组包含多个数据单元,一个数据单元用于存储对应的一个地图数据块;
对获取的所述地图数据块中的地图数据进行更改,将更改后的地图数据所属整个地图数据块保存至本地,包括:对获取的所述地图数据块中的地图数据进行更改,将更改后的地图数据所属整个地图数据块保存至对应的数据单元中。
8.根据权利要求1所述的方法,其特征在于,还包括:
响应于对游戏副本中地图数据的读取指令,判断本地是否包含待读取地图数据;
若是,在所述游戏副本中直接读取所述待读取地图数据;
若否,查找所述待读取地图数据的数据引用,通过调用查找到的数据引用从所述源地图数据中读取所述待读取地图数据。
9.一种游戏副本创建装置,其特征在于,包括:
建立模块,适于获取游戏地图的源地图数据,为所述源地图数据建立数据引用;
获取模块,适于响应于游戏副本创建指令,获取所述源地图数据的数据引用、及待创建游戏副本所需的与所述源地图数据不同的地图数据;
创建模块,适于基于所述数据引用和与所述源地图数据不同的地图数据创建游戏副本;其中,所述游戏副本中数据引用被调用时读取所述数据引用对应的源地图数据。
10.一种计算机存储介质,所述计算机存储介质存储有计算机程序代码,当所述计算机程序代码在计算设备上运行时,导致所述计算设备执行权利要求1-8中任一项所述的游戏副本创建方法。
11.一种计算设备,包括:处理器;存储有计算机程序代码的存储器;当所述计算机程序代码被所述处理器运行时,导致所述计算设备执行权利要求1-8中任一项所述的游戏副本创建方法。
CN202011559924.7A 2020-12-25 2020-12-25 一种游戏副本创建方法、装置、存储介质及计算设备 Pending CN112619153A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011559924.7A CN112619153A (zh) 2020-12-25 2020-12-25 一种游戏副本创建方法、装置、存储介质及计算设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011559924.7A CN112619153A (zh) 2020-12-25 2020-12-25 一种游戏副本创建方法、装置、存储介质及计算设备

Publications (1)

Publication Number Publication Date
CN112619153A true CN112619153A (zh) 2021-04-09

Family

ID=75324821

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011559924.7A Pending CN112619153A (zh) 2020-12-25 2020-12-25 一种游戏副本创建方法、装置、存储介质及计算设备

Country Status (1)

Country Link
CN (1) CN112619153A (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1924873A (zh) * 2006-09-19 2007-03-07 北京金山数字娱乐科技有限公司 游戏地图的存储方法及装置、游戏地图的显示方法及系统
CN1949222A (zh) * 2006-11-27 2007-04-18 北京金山软件有限公司 游戏地图的存储方法及系统、游戏地图的获取方法及系统
CN108568112A (zh) * 2018-04-20 2018-09-25 网易(杭州)网络有限公司 一种游戏场景的生成方法、装置和电子设备
CN110124313A (zh) * 2019-05-07 2019-08-16 深圳市腾讯网域计算机网络有限公司 一种游戏副本实现方法、装置及服务器
CN111035932A (zh) * 2019-12-20 2020-04-21 网易(杭州)网络有限公司 游戏副本处理方法、装置、电子设备及存储介质
CN111603768A (zh) * 2020-05-27 2020-09-01 网易(杭州)网络有限公司 一种游戏地图的存储、游戏地图的显示方法及装置
CN111603769A (zh) * 2020-06-28 2020-09-01 上海完美时空软件有限公司 游戏内容的生成方法及装置、存储介质、计算机设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1924873A (zh) * 2006-09-19 2007-03-07 北京金山数字娱乐科技有限公司 游戏地图的存储方法及装置、游戏地图的显示方法及系统
CN1949222A (zh) * 2006-11-27 2007-04-18 北京金山软件有限公司 游戏地图的存储方法及系统、游戏地图的获取方法及系统
CN108568112A (zh) * 2018-04-20 2018-09-25 网易(杭州)网络有限公司 一种游戏场景的生成方法、装置和电子设备
CN110124313A (zh) * 2019-05-07 2019-08-16 深圳市腾讯网域计算机网络有限公司 一种游戏副本实现方法、装置及服务器
CN111035932A (zh) * 2019-12-20 2020-04-21 网易(杭州)网络有限公司 游戏副本处理方法、装置、电子设备及存储介质
CN111603768A (zh) * 2020-05-27 2020-09-01 网易(杭州)网络有限公司 一种游戏地图的存储、游戏地图的显示方法及装置
CN111603769A (zh) * 2020-06-28 2020-09-01 上海完美时空软件有限公司 游戏内容的生成方法及装置、存储介质、计算机设备

Similar Documents

Publication Publication Date Title
WO2020220915A1 (zh) 虚拟对象显示方法、装置、电子设备及存储介质
US8031192B2 (en) System and method for generating additional polygons within the contours of a rendered object to control levels of detail
CN112044074B (zh) 对非玩家角色寻路的方法、装置、存储介质及计算机设备
US20220147795A1 (en) Neural network tiling method, prediction method, and related apparatus
CN107115673B (zh) 一种基于行为树的行为执行方法和装置
CN113599798B (zh) 基于深度强化学习方法的中国象棋博弈学习方法及系统
US10824775B2 (en) Simulation method and device for determining collision between objects
CN105183566B (zh) 3d游戏渲染引擎的资源管理方法
CN110047123A (zh) 一种地图渲染方法、装置、存储介质及计算机程序产品
JP6937759B2 (ja) データベース操作方法及び装置
CN111603768A (zh) 一种游戏地图的存储、游戏地图的显示方法及装置
CN114344903A (zh) 控制虚拟对象拾取虚拟道具的方法、终端及存储介质
US8072454B1 (en) Parallel processing system, method, and computer program product for selecting a ray tracing entity from a group of ray tracing entities for processing
KR20170065085A (ko) 시스템 리소스 관리를 위한 방법 및 장치
CN114996703A (zh) 一种电力系统网络安全靶场混合仿真方法、系统及设备
CN111737166B (zh) 数据对象的处理方法、装置及设备
JP2019106031A (ja) データ処理システム及びデータ分析処理方法
CN112619153A (zh) 一种游戏副本创建方法、装置、存储介质及计算设备
CN112245932A (zh) 游戏资源的处理方法、装置以及服务端设备
CN115957505A (zh) 游戏中的寻路方法、装置、计算机设备及可读存储介质
KR102209526B1 (ko) 병렬 연산을 통한 단백질-리간드 상호 작용 분석 방법 및 장치
CN106156065B (zh) 一种文件持久化方法、删除方法以及相关装置
CN109460185B (zh) 组建分块组ckg的方法、装置、虚拟存储池及存储介质
CN107320963B (zh) 角色属性的存储方法、装置、存储介质、处理器及服务器
CN110569122A (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