一种基于网格技术的大场景下海量实体的支持方法和系统技术方案

技术编号:38825158 阅读:15 留言:0更新日期:2023-09-15 20:04
本申请提供了一种基于网格技术的大场景下海量实体的支持方法、系统、计算设备和计算机可读存储介质,该方法利用ECS模型将场景的组成分为实体、组件和系统,对应地,将负责整个场景世界处理的服务器分为数据网格和计算网格。进而将场景的实体和组件分配到数据网格的多个单元中,并根据每个数据网格单元上的实体分配计算网格单元,将数据网格单元中的实体分配给不同的计算网格单元进行逻辑处理。每个数据网格单元和对应的计算网格单元之间基于帧同步进行数据更新和逻辑计算,从而保证了整个场景世界中所有实体间交互的实时性,实现了海量用户在同一场景下进行交互的方案。量用户在同一场景下进行交互的方案。量用户在同一场景下进行交互的方案。

【技术实现步骤摘要】
一种基于网格技术的大场景下海量实体的支持方法和系统


[0001]本申请涉及计算机
,特别涉及一种基于网格技术的大场景下海量实体的支持方法、系统、计算设备和计算机可读存储介质。

技术介绍

[0002]现有技术中,网络游戏是一种实时性要求很强的应用,有大量的客户端实时连接至服务器上。但是单个逻辑服务器能容纳的在线用户数通常有限,尤其在MMO、SLG这种交互性很强的场景中,这造成了不同服务器之前的用户无法进行交互。如何在同一个场景中支撑百万、千万用户的交互是本领域一直存在的难题,目前现有技术通过分逻辑服、分线、分区的方式避免大量的用户在一个场景中,或通过传统地图分块的方式处理无缝大地图。但是这些方式规避了问题本身,并没有解决海量用户在同一个场景的交互问题。在现在VR/MR应用、大世界游戏应用兴起的情况下,海量实体的实时交互是一个亟需解决的技术问题。

技术实现思路

[0003]有鉴于此,本申请例提供了一种基于网格技术的大场景下海量实体的支持方法、系统、计算设备和计算机可读存储介质,以解决现有技术中存在的技术缺陷。
[0004]根据本申请实施例的第一方面,提供了一种基于网格技术的大场景下海量实体的支持方法,包括:
[0005]对场景进行划分,将场景数据分配到多个数据网格单元中;所述场景数据包括实体与组件;
[0006]将所述数据网格单元的场景数据同步到目标计算网格单元中;其中,所述数据网格单元对应一个或多个目标计算网格单元,所述计算网格单元包括计算逻辑;
[0007]所述计算网格单元完成逻辑计算后将计算结果同步写入到目标数据网格单元中。
[0008]根据本申请实施例的第二方面,提供了一种基于网格技术的大场景下海量实体的支持系统,包括:
[0009]多个数据网格单元,每个所述数据网格单元保存场景数据中的一部分;所述场景数据包括实体与组件;
[0010]多个计算网格单元,每个所述计算网格单元包括计算逻辑;其中,每个所述数据网格单元对应一个或多个目标计算网格单元;
[0011]所述数据网格单元还包括第一同步单元,用于将场景数据同步到目标计算网格单元中;
[0012]所述计算网格单元还包括第二同步单元,用于将计算网格单元的计算结果同步写入到目标数据网格单元中。
[0013]根据本申请实施例的第三方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述基于网格技术的大场景下海量实体的支持方法的步骤。
[0014]根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行所述基于网格技术的大场景下海量实体的支持方法的步骤。
[0015]在本申请的实施例中,利用ECS模型将场景的组成分为实体、组件和系统,对应地,将负责整个场景世界处理的服务器分为数据网格和计算网格。进而将场景的实体和组件分配到数据网格的多个单元中,并根据每个数据网格单元上的实体分配计算网格单元,将数据网格单元中的实体分配给不同的计算网格单元进行逻辑处理。每个数据网格单元和对应的计算网格单元之间基于帧同步进行数据更新和逻辑计算,从而保证了整个场景世界中所有实体间交互的实时性。通过上述的方案实现了海量用户在同一场景下进行交互的方案,同时利用了ECS模型易于扩展的特性,结合数据和计算网格将数据和计算分离,当场景中的实体数量发生变化时可以方便的进行动态缩放。
附图说明
[0016]图1是本申请实施例提供的计算设备的结构框图;
[0017]图2是本申请实施例提供的一种基于网格技术的大场景下海量实体的支持方法的流程示意图;
[0018]图3是一种三维场景的示意图;
[0019]图4是本申请实施例中将场景数据分配到数据网格单元的示意图;
[0020]图5是本申请实施例中通过数据网格和计算网格完成大场景下海量实体计算的示意图;
[0021]图6是本申请实施例提供的一种基于网格技术的大场景下海量实体的支持系统的结构示意图。
具体实施方式
[0022]在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
[0023]在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0024]应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“响应于确定”。
[0025]在本申请中,提供了一种基于网格技术的大场景下海量实体的支持方法及系统、计算设备和计算机可读存储介质,在下面的实施例中逐一进行详细说明。
[0026]图1示出了根据本申请一实施例的计算设备100的结构框图。该计算设备100的部
件包括但不限于存储器110和处理器120。处理器120与存储器110通过总线130相连接,数据库150用于保存数据。
[0027]计算设备100还包括接入设备140,接入设备140使得计算设备100能够经由一个或多个网络160通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备140可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi

MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
[0028]在本申请的一个实施例中,计算设备100的上述部件以及图1中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图1所示的计算设备结构框图仅仅是出于示例的目的,而不是对本申请范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
[0029]计算设备100可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于网格技术的大场景下海量实体的支持方法,其特征在于,包括:对场景进行划分,将场景数据分配到多个数据网格单元中;所述场景数据包括实体(Entity)与组件(Component);将所述数据网格单元的场景数据同步到目标计算网格单元;其中,所述数据网格单元对应一个或多个目标计算网格单元,所述计算网格单元包括系统(System);所述计算网格单元完成逻辑计算后将计算结果同步写入到目标数据网格单元。2.根据权利要求1的方法,其中,所述对场景进行划分,将场景数据分配到多个数据网格单元中包括但不限于:根据场景的区域进行划分、根据场景中实体的数量进行划分或者根据数据网格单元的处理能力进行划分。3.根据权利要求1的方法,其中,将所述数据网格单元中的场景数据同步到目标计算网格单元中包括:根据所述数据网格单元中的实体分配目标计算网格单元,所述目标计算网格单元用于处理被分配的实体的逻辑计算。4.根据权利要求3所述的方法,其中,根据所述数据网格单元中的实体分配目标计算网格单元包括:根据所述数据网格单元中实体的数量和或计算网格单元的处理能力,将所述数据网格单元中的实体分别分配给所述目标计算网格单元。5.根据权利要求1所述的方法,其中,将所述数据网格单元中的场景数据同步到目标计算网格单元中包括:采用帧同步的方式,将数据网格单元的实体和组件数据同步到目标计算网格单元中。6.根据权利要求1...

【专利技术属性】
技术研发人员:扈红柯郭子文李建良乐坚强何雨泉林逸杨东杨利华袁冠鹏
申请(专利权)人:北京云游互动网络科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1