一种游戏场景的管理方法及装置的制造方法

文档序号:8381205阅读:196来源:国知局
一种游戏场景的管理方法及装置的制造方法
【技术领域】
[0001] 本发明涉及计算机技术领域,尤其涉及一种游戏场景的管理方法及装置。
【背景技术】
[0002] 近年来,随着数字化技术的不断发展,场景管理在游戏中显得越来越重要。游戏中 的场景管理器一种是用来进行碰撞检测的装置。碰撞检测是指对空间内某些对象间发生了 碰撞或交叉的一种检测。游戏中的碰撞检测可分为宽进、严出两个阶段。
[0003] 几十年来,随着国内外研宄人员对碰撞检测技术不断深入研宄,该技术已经成熟 并被广泛运用。特别是在游戏逻辑和渲染优化中,碰撞检测都起着至关重要的作用。场景 管理器大多是用来进行宽进阶段碰撞检测的装置。在宽进阶段,场景管理器通过对场景中 的对象进行有效地组织,来迅速找到相互之间可能发生碰撞的对象。目前的现有技术中所 采用的对游戏场景中对象进行组织的计算方法,在一定程度上,消耗系统资源较大,影响了 宽进阶段的碰撞检测速度,使得游戏玩家用户的体验较差。

【发明内容】

[0004] 有鉴于此,本发明实施例提出一种游戏场景的管理方法及装置,以实现对游戏场 景的有效管理。
[0005] 一方面,本发明实施例提供了一种游戏场景的管理方法,所述方法包括:
[0006] 将游戏场景划分为多个相同体积的正方体区域;
[0007] 按照所划分的正方体区域及所述正方体区域所对应的边建立散列表。
[0008] 另一方面,本发明实施例还提供了一种游戏场景的管理装置,所述装置包括:
[0009] 划分单元,用于将游戏场景划分为多个相同体积的正方体区域;
[0010] 散列表建立单元,用于按照所划分的正方体区域及所述正方体区域对应的边建立 散列表。
[0011] 采用本发明实施例所提供的技术方案,能够将复杂且占用空间较大的游戏场景划 分为多个等大的正方体区域,通过散列表对这些区域进行管理,并对区域内的对象进行组 织,从而减少碰撞检测的计算量,降低碰撞检测所消耗的系统资源。
【附图说明】
[0012] 通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它 特征、目的和优点将会变得更明显:
[0013] 图1是本发明第一实施例提供的游戏场景的管理方法的流程图;
[0014] 图2是本发明第二实施例提供的游戏场景的管理方法的流程图;
[0015] 图3是本发明第三实施例提供的游戏场景的管理方法的流程图;
[0016] 图4是本发明第四实施例提供的游戏场景的管理方法的流程图;
[0017] 图5是本发明第五实施例提供的游戏场景的管理装置的结构图。
【具体实施方式】
[0018] 下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描 述的具体实施例仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于 描述,附图中仅示出了与本发明相关的部分而非全部内容。
[0019] 图1示出本发明的第一实施例。
[0020] 图1是本发明第一实施例提供的游戏场景的管理方法的流程示意图,所述的游戏 场景的管理方法包括:
[0021] 步骤S101,将游戏场景划分为多个相同体积的正方体区域。
[0022] 游戏场景是指可以为游戏提供能够还原出游戏中的建筑物、树木、天空、道路等可 用元素的画面。在3D游戏中,游戏场景提供了一个包含各种元素的空间。该空间由所设计 的游戏画面的宽度、深度和高度来共同确定。
[0023] 通过所计算出的游戏场景空间,及进行游戏场景管理所使用的存储空间的情况, 来确定所分空间的数目,进而对游戏场景进行划分。所述的游戏场景并不都是规则的正方 体结构,因此以游戏场景空间所划分的正方体区域并不完全为规则的正方体区域,只能是 近似于正方体的区域。
[0024] 步骤S102,按照所划分的正方体区域及所述正方体区域对应的边建立散列表。
[0025] 散列表是根据关键码值直接进行访问的数据结构。也就是说,散列表通过把关键 码值映射到表中的某个位置来访问记录,以加快查找速度。这个映射函数叫做散列函数,存 放记录的数组叫做散列表。
[0026] 在本实施例中,按照步骤SlOl所划分的正方体区域与其在游戏场景的宽、高、深 的线段上对应的一部分,即构成每个正方体区域的所有边。即将该近似正方体区域与构成 其的每条边建立对应关系,并建立散列表。
[0027] 本发明实施例通过将游戏场景划分为多个近似相同体积的正方体区域,并按照所 划分的正方体区域及所述正方体区域对应的边建立散列表。能够将复杂且占用空间较大的 游戏场景划分为多个等大的正方体区域,并通过散列表对这些区域进行管理,以减少碰撞 检测的计算量,降低碰撞检测所消耗的系统资源。
[0028] 图2示出本发明的第二实施例。
[0029] 图2是本发明第二实施例提供的游戏场景的管理方法的流程示意图,所述游戏场 景的管理方法以本发明第一实施例为基础,进一步的,将游戏场景划分为多个相同体积的 正方体区域具体优化为:按照正方体区域的最大个数确定散列表元素数量;根据散列表内 最多元素数量及游戏场景体积,计算出正方体区域理想体积;按照正方体区域理想体积计 算正方体理想边长;根据游戏场景的宽度、高度和深度及正方体理想边长计算正方体修正 平均边长;按照正方体修正平均边长将游戏场景划分为多个相同体积的正方体区域。
[0030] 参见图2,所述的游戏场景的管理方法,包括:
[0031] 步骤S201,根据分配的内存大小确定将游戏场景划分为相同体积的正方体区域的 最大个数。
[0032] 在游戏场景碰撞检测过程中,可以讲游戏场景均匀的分成若干个正方体区域,每 个正方体区域需要相应的系统资源支持进行碰撞检测。从系统能够正常运行的角度考虑, 应当为每个正方体区域分配合适的内存大小。根据分配的内存大小确定将游戏场景划分为 相同体积的正方体区域的最大个数。
[0033] 步骤S202,按照正方体区域的最大个数确定散列表元素数量。
[0034] 在本实施例中,每个散列表的元素对应一个由游戏场景划分的正方体,即散列表 的元素数量与将游戏场景划分为相同体积的正方体区域的最大个数相同。
[0035] 步骤S203,根据散列表内最多元素数量及游戏场景体积,计算出正方体区域理想 体积。
[0036] 游戏场景的体积由游戏场景的宽度、深度及高度决定。散列表中的每一个元素对 应一个正方体区域,即游戏场景最多可划分为散列表内最多元素数量的正方体。为了后续 进行碰撞检测,应当将游戏场景划分为尽可能多的正方体。
[0037] 利用划分的多个正方体理想体积之和与游戏场景的体积相等这一特点,计算出正 方体的体积,即设正方体理想体积为V,散列表元素最大个数为m,场景宽w,高h,深d,
[0038] 则 V = w*h*d/m。
[0039] 步骤S204,按照正方体理想区域体积计算正方体理想边长。
[0040] 依据如下公式计算正方体理想边长V :
【主权项】
1. 一种游戏场景的管理方法,其特征在于,包括: 将游戏场景划分为多个相同体积的正方体区域; 按照所划分的正方体区域及所述正方体区域对应的边建立散列表。
2. 根据权利要求1所述的方法,其特征在于,所述的将游戏场景划分为多个相同体积 的正方体区域具体包括: 根据分配的内存大小确定将游戏场景划分为相同体积的正方体区域的最大个数; 按照正方体区域的最大个数确定散列表元素数量; 根据散列表内最多元素数量及游戏场景体积,计算出正方体区域理想体积; 按照正方体区域理想体积计算正方体理想边长; 根据游戏场景的宽度、高度和深度及正方体理想边长计算正方体修正平均边长; 按照正方体修正平均边长将游戏场景划分为多个相同体积的正方体区域。
3. 根据权利要求2所述的方法,其特征在于,所述的按照所划分的正方体区域及所述 正方体区域对应的边建立散列表具体包括: 按照所述正方体修正平均边长及游戏场景的宽、深和高建立三维数组; 按照三维数组与其对应的正方体区域建立散列表。
4. 根据权利要求1所述的方法,其特征在于,在确定散列表所对应的区域中的对象之 后,还包括: 为每个正方体区域建立轴对称包围盒AABB ; 为每个正方体区域建立空间二叉树,所述空间二叉树以轴对称包围盒AABB为节点,并 将依次反复对宽度、高度和深度进行等分的轴对称包围盒AABB作为子节点,直到预定层数 或轴对称包围盒AABB小于一定程度为止。
5. -种游戏场景的管理装置,其特征在于,包括: 划分单元,用于将游戏场景划分为多个相同体积的正方体区域; 散列表建立单元,用于按照所划分的正方体区域及所述正方体区域对应的边建立散列 表。
6. 根据权利要求5所述的装置,其特征在于,所述的划分单元具体用于: 根据分配的内存大小确定将游戏场景划分为相同体积的正方体区域的最大个数; 按照正方体区域的最大个数确定散列表元素数量; 根据散列表内最多元素数量及游戏场景体积,计算出正方体区域理想体积; 按照正方体区域理想体积计算正方体理想边长; 根据游戏场景的宽度、高度和深度及正方体理想边长计算正方体修正平均边长; 按照正方体修正平均边长将游戏场景划分为多个相同体积的正方体区域。
7. 根据权利要求5所述的装置,其特征在于,所述的散列表建立单元具体用于: 按照所述正方体修正平均边长及游戏场景的宽、深和高建立三维数组; 按照三维数组与其对应的正方体区域建立散列表。
8. 根据权利要求5所述的装置,其特征在于,所述的游戏场景的管理装置还包括: 轴对称包围盒AABB建立单元,用于为每个正方体区域建立轴对称包围盒AABB ; 空间二叉树建立单元,用于为每个正方体区域建立空间二叉树,所述空间二叉树以轴 对称包围盒AABB为节点,并将依次反复对宽度、高度和深度进行等分的轴对称包围盒AABB 作为子节点,直到预定层数或轴对称包围盒AABB小于一定程度为止。
【专利摘要】本发明实施例提供了一种游戏场景的管理方法及装置,所述游戏场景的管理方法包括:将游戏场景划分为多个相同体积的正方体区域,按照所划分的正方体区域及所述正方体区域对应的边建立散列表。能够将复杂且空间巨大的游戏场景划分为多个等大的正方体区域,通过散列表对这些区域进行管理,并对区域内的对象进行组织。从而减少碰撞检测的计算量,降低碰撞检测所消耗的系统资源。
【IPC分类】G06F19-00
【公开号】CN104699946
【申请号】CN201410844678
【发明人】王衎
【申请人】北京像素软件科技股份有限公司
【公开日】2015年6月10日
【申请日】2014年12月30日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1