CN112973127A - 一种游戏3d场景编辑方法及装置 - Google Patents
一种游戏3d场景编辑方法及装置 Download PDFInfo
- Publication number
- CN112973127A CN112973127A CN202110286337.3A CN202110286337A CN112973127A CN 112973127 A CN112973127 A CN 112973127A CN 202110286337 A CN202110286337 A CN 202110286337A CN 112973127 A CN112973127 A CN 112973127A
- Authority
- CN
- China
- Prior art keywords
- voxel
- scene
- file
- game
- virtual object
- 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
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating 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
- A63F13/63—Generating 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 by the player, e.g. authoring using a level editor
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种游戏3D场景编辑方法及装置,获取游戏场景的场景文件;对所述场景文件进行体素数组转换,获得体素文件;响应于将目标虚拟物体放置在所述游戏场景,在所述体素文件中获取与所述目标虚拟物体相匹配的体素数据;基于所述体素数据,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。通过体素对游戏三维空间进行索引,完成三维空间的场景编辑处理,提升了游戏中三维空间上的放置类玩法的数据处理效果。
Description
技术领域
本发明涉及信息处理技术领域,特别是涉及一种游戏3D场景编辑方法及装置。
背景技术
随着游戏应用程序(APP,application)越来越受欢迎,游戏的内容越来越复杂。游戏玩家需要个性化的东西越来越多,例如,在放置玩法中玩家可以在游戏指定的列表中,将列表中可摆放的物品在游戏3D场景中进行放置。即玩家可以通过根据自己的设计来定义自己游戏内的场景,通过动态编辑场景的物体来完成个性化的定制。并且放置类玩法也可以给游戏内的养成体系增加了不同的用户感受。
玩家对于游戏的自定义需求越来越高,那就需要游戏的技术对于场景的支持也越来越高。但是,现有的大部分的游戏的放置玩法、场景编辑都是2D的,是一种基于格子坐标体系的二维空间的摆放,玩家只能定义二维空间的X方向和Y方向来完成游戏内容的个性化空间。因此,无法实现真实意义的三维空间,进而无法实现游戏中三维空间上的放置类玩法,使得用户体验效果较差。
发明内容
针对于上述问题,本发明提供一种游戏3D场景编辑方法及装置,提升了游戏中三维空间上的放置类玩法的数据处理效果。
为了实现上述目的,本发明提供了如下技术方案:
一种游戏3D场景编辑方法,所述方法包括:
获取游戏场景的场景文件;
对所述场景文件进行体素数组转换,获得体素文件;
响应于将目标虚拟物体放置在所述游戏场景,在所述体素文件中获取与所述目标虚拟物体相匹配的体素数据;
基于所述体素数据,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
可选地,所述对所述场景文件进行体素数组转换,获得体素文件,包括:
通过栅格化三角形将所述场景文件中的场景转换为体素数组;
对所述体素数据进行过滤,获得目标区域,所述目标区域表示虚拟物品的可放置区域;
生成所述目标区域的轮廓,并对所述轮廓进行分割,获得多边形网格;
对所述多边形网格进行细节处理,获得体素文件。
可选地,所述基于所述体素数据,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中,包括:
获取用户针对所述目标虚拟物体的操作指令;
基于所述体素数据,对所述操作指令进行分析,获取与所述目标虚拟物体对应的三维数据;
基于所述三维数据,判断所述操作指令的合法性;
若合法,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
可选地,所述将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中,包括:
基于所述三维数据,获取所述目标虚拟物体在所述游戏场景对应的3D虚拟图像中的路径信息;
基于所述路径信息,将所述所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
可选地,所述方法还包括:
对所述体素文件进行压缩,包括:
将体素之间的间隔小于预设间隔阈值的题述进行合并;
将体素超过飞行高度阈值的体素进行过滤;
将不连通区域的体素进行合并,获得合并后的体素。
可选地,所述方法还包括:
对所述体素文件进行内存管理,包括以下的一种:
采用四叉树的方式对所述体素文件进行内存管理;
将每个体素坐标存储所有的体素信息;
利用目标数组记录所有的体素信息。
可选地,所述方法还包括:
对所述体素文件进行压力测试,包括:
对目标数量的用户对所述体素文件进行调用,获得调用结果;
基于所述调用结果进行压力测试,获得压力测试结果。
可选地,所述装置包括:
第一获取单元,用于获取游戏场景的场景文件;
转换单元,用于对所述场景文件进行体素数组转换,获得体素文件;
第二获取单元,用于响应于将目标虚拟物体放置在所述游戏场景,在所述体素文件中获取与所述目标虚拟物体相匹配的体素数据;
添加单元,用于基于所述体素数据,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
一种存储介质,所述存储介质存储有可执行指令,所述指令被处理器执行时实现如上述中任意一项所述的游戏3D场景编辑方法。
一种电子设备,包括:
存储器,用于存储程序;
处理器,用于执行所述程序,所述程序具体用于实现如上述中任意一项所述的游戏3D场景编辑方法。
相较于现有技术,本发明提供了一种游戏3D场景编辑方法及装置,获取游戏场景的场景文件;对所述场景文件进行体素数组转换,获得体素文件;响应于将目标虚拟物体放置在所述游戏场景,在所述体素文件中获取与所述目标虚拟物体相匹配的体素数据;基于所述体素数据,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。通过体素对游戏三维空间进行索引,完成三维空间的场景编辑处理,提升了游戏中三维空间上的放置类玩法的数据处理效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种游戏3D场景编辑方法的流程示意图;
图2为本发明实施例提供的一种编辑结果的3D显示结果的示意图;
图3为本发明实施例提供的一种游戏3D场景编辑装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述特定的顺序。此外术语“包括”和“具有”以及他们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有设定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。
在本发明实施例中提供了一种游戏3D场景编辑方法,通过体素技术对游戏的三维空间进行索引,完成三维空间的场景编辑玩法,为后续三维空间玩法的数据处理提供技术支持。
参见图1,其示出了本发明实施例提供的一种游戏3D场景编辑方法的流程示意图,可以包括以下步骤:
S101、获取游戏场景的场景文件。
游戏场景包括游戏中的环境、建筑、机械、道具等,即根据实际需求还原出的与真实场景对应的虚拟画面中的场景。场景文件中可以记载游戏场景中各个部分中的相关信息,如建筑物的高度、周围环境等。
S102、对所述场景文件进行体素数组转换,获得体素文件。
体素(voxel):是体积元素(volumepixel)的简称,是数字数据在三维空间分割的最小单元,体素用于三维成像、科学数据与医学影像等领域。概念上类似二维空间的最小单位-像素,但是,像素用在二维计算机图像的影像数据上。体素可以用于游戏等应用的空间数据上。
将场景文件转换为体素文件的过程中包括了体素的生成。即完成了场景文件中元素的体素化,所述体素化是指从源几何体构造实心的高度场,用来表示不可行走的空间,也可以是不可放置虚拟物体的空间。
S103、响应于将目标虚拟物体放置在所述游戏场景,在所述体素文件中获取与所述目标虚拟物体相匹配的体素数据。
S104、基于所述体素数据,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
其中,将目标虚拟物体放置在游戏场景中,即将目标虚拟物体展现在游戏场景对应的虚拟画面中,如目标虚拟物体是家具,将家具放置在游戏用户自己构造的房间中。在目标虚拟物体进行放置的过程中,由于不同的目标用户的需要不同,会产生个性化操作,所以会根据用户的操作获取与目标虚拟物体对应的体素数据,从而根据体素数据完成包括该目标虚拟物体的3D游戏场景的编辑,例如,可以将目标虚拟物体添加到游戏场景对应的3D虚拟图像中。
下面对本发明实施例中的具体应用过程进行说明。
对场景文件转换为体素文件时,要完成元素的体素化、生成地区、生成轮廓、生成多边形网格、生成高度细节。
例如,可以通过构建体素模型将输入的场景文件中的三角面栅格化到多层高度域,并简单剔除角色不会移动的位置而成。可移动区被划分为多层二维区域。这些二维区域都有唯一的非重叠等高线,用多边形替换这些区域,可以生成导航网格和详细网格,导航网格为可行走区域连接起来的网格,用于描述寻径空间。详细网络对应于导航网格,其有更详细的高度信息,这个高度信息决定是否将不同高度差多边形连接起来。
在另一实施方式中,将场景文件转换为体素文件,可以通过栅格化三角形将所述场景文件中的场景转换为体素数组;对所述体素数据进行过滤,获得目标区域,所述目标区域表示虚拟物品的可放置区域;生成所述目标区域的轮廓,并对所述轮廓进行分割,获得多边形网格;对所述多边形网格进行细节处理,获得体素文件。
首先实现体素化,即通过栅格化三角形将输入场景变为体素数据,可以指定长、宽、高(3D矩形,沿着X,Y,Z轴方向的)。体素体积越小,计算量越大。实现从源几何构造实心的高度场,可来表示不可行走的空间,该不可行走的空间在后续游戏场景应用中为虚拟物品无法放置的区域。过滤是指体素数组生成后,会通过过滤隔离可行走区域的体素,即获得目标区域,目标区域表示虚拟物品的可放置区域。体素是否可行走受许多因素影响,除受自身大小因素,还会受到许多代理参数影响,例如:高度、半径、能爬的最大高度、能行走斜坡的最大高度。在获得目标区域的过程中实现了将实心高度场的上表面中连续的区间合并为地区。生成轮廓可以检测地区的轮廓,并构造成简单多边形,生成多边形网络,将轮廓分割成凸多边形。然后进行细节处理,实现将多边形网格三角化,得到高度细节。
因此,在生成体素文件时,会产生体素,将体素化后体素数据结构抽离出来,即可生成相关的体素文件。
生成体素文件后,为了便于后续体素文件的应用,需要将体素文件写入到内存,可以编写序列化和反序列化的函数,其中,序列化是指从内存数据打包写入文件的过程,反序列化是指从数据文件读取到内存的过程。对应的在处理文件的时候可以通过压缩处理,在场景大约110m*111m(按体素尺寸为330*331,cs=0.3),文件的尺寸大小约为957K。
在本发明实施例中,所述基于所述体素数据,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中,包括:
获取用户针对所述目标虚拟物体的操作指令;
基于所述体素数据,对所述操作指令进行分析,获取与所述目标虚拟物体对应的三维数据;
基于所述三维数据,判断所述操作指令的合法性;
若合法,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
游戏场景编辑主要是加载体素文件进行内存管理,在游戏内通过列表来管理物体。每个物体存在x,y,z三个数据,并通过ID来进行管理,玩家在游戏内对物体进行移动,旋转等操作时,会生成操作指令,然后对操作指令进行分析,确定即将放置的物体的位置信息即获取目标虚拟物体对应的三维数据,每次数据的变化都需要通过体素技术提供的接口对玩家操作指令进行合法性验证,如果验证可以操作即操作合法,例如,可以将虚拟物品放置在玩家指定的位置。若合法,可以操作则更新数据的信息,即将虚拟物品放置在指定位置,如果不合法就标记为非法,让玩家继续编辑。
对应的,所述将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中,包括:基于所述三维数据,获取所述目标虚拟物体在所述游戏场景对应的3D虚拟图像中的路径信息;基于所述路径信息,将所述所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
在本发明实施例中,可以对体素文件进行二次编辑,即生成的体素文件支持读取和保存新的数据文件,还可以将编辑后的结果以3D的方式显示出来。参见图2,其示出了一种编辑结果的3D显示结果的示意图。
在本发明实施例中,还提供了场景文件的查询接口,通过该查询接口实现和碰撞检测相关额函数,核心算法的时间复杂度都是0(1),满足服务器的基本使用。例如,输入实际场景坐标体素坐标,返回的数据为最底部体素的上表面高度开始(接下来为第二个体素的下表面、上表面),使得高度逐渐升高。并返回体素数据的个数,非体素个数。可以获得指定位置的体素个数,获得体素的垂直序号和指定位置的最高像素的上表面的高度、相对垂直体素序号的上表面高度、相对垂直体素序号的下表面高度。
在本发明实施例中还提供了体素文件的寻路支持,游戏内的寻路支持逻辑主要包括:
邻居体素太高,超过向上走的最高高度,不可以走。
邻居体素太低,超过向下走的最低高度,以某个速度垂直下落。
可行走的时候,需要注意平滑的处理,因为体素是锯齿状的。
在本发明实施例中还包括体素文件的内存和文件压缩,包括:
将体素之间的间隔小于预设间隔阈值的题述进行合并;
将体素超过飞行高度阈值的体素进行过滤;
将不连通区域的体素进行合并,获得合并后的体素。
为了减少不必要的体素开销,需要合并一下不需要的数据。
例如,两个体素之间的间隔很少,游戏场景中的人或物品无法从中间穿过,则需要合并。同时超过最大飞行高度(最大飞行高度可以根据游戏具体内容进行定义)的体素需要过滤掉。
具体的包括:
构建原体素的反体素,原体素表示被实物占据的空间,反体素则表示没有被实物占据的空间,即表示玩家可以操作的空间。生成过程中需要整个场景的最大飞行高度和Agent的最大宽度。反体素生成完成后,在转换为原体素才可以被使用。并且可以在编辑器中可以查看优化后的前后结果。
还可以对不连通区域的体素合并,比如一些场景的石头内部。生成体素的美术制作和编辑器相关:所有玩家进不去的空间,都做成封闭的。建筑下由于完成完全被体素挡住,建筑下的石头也无法飞行过去,需要编辑器支持加小片的方式处理体素。对于不可生成体素的元素(如水)需要单独处理。
在本申请实施例中还包括体素文件的内存自管理,包括以下中的一种:
采用四叉树的方式对所述体素文件进行内存管理;
将每个体素坐标存储所有的体素信息;
利用目标数组记录所有的体素信息。
具体的,四叉树方式为,查找复杂度0,并且需要父节点到子节点的指针,体素数据的过多不适合使用指针。每个体素坐标(x,y)一个数组,存储(x,y)处的所有的体素信息。一位数组spanArr纪录所有的体素信息,每个元素都是short类型(不使用float),精度是0.1m,依次记录第一个(x,y)位置上第一个体素的上表面,第二个体素的下上表面......另外一个一位数组indexArr记录(x,y)处的体素在spanArr的开始位置和体素数量。
在本发明实施例中还包括:
对所述体素文件进行压力测试,包括:
对目标数量的用户对所述体素文件进行调用,获得调用结果;
基于所述调用结果进行压力测试,获得压力测试结果。
初步测试了下服务器的代码记录了多组客户端调用碰撞函数的时候参数然后在服务器上执行服务器代码1秒中能执行12000*30次(debug),120000*30次(release)。也就是说DEBUG的服务器在服务器30帧的情况下,每个人在每帧进行一次飞行碰撞检测的话,能承载12000人。Release版在乘10。
在本发明实施例中提供的一种游戏3D场景编辑方法,采用体素技术,相比现有的基于格子的场景编辑,可以让玩家定义三维空间Z轴上的物体摆放。基于格子的场景编辑智能确定二维空间坐标系的位置,而无法确定三维空间Z轴上的位置,通过基于体素的游戏内3D场景编辑就可以完成Z轴上的摆放了。本发明实施例提供的方法可以实现基于体素的游戏内3D编辑的流程,场景文件导出体素文件,体素文件的加载,体素技术的常用函数,体素文件的可视化,其普遍适用性较好。针对于游戏开发者可以通过该方法提升游戏设计过程中的数据处理效率。例如,可以创建一个三维空间的家园系统,让玩家可以在里面自由的摆放自己的家具,可以在家具上摆放家具。开发者也可以使用该技术做一个三维空间的帮会系统,让帮会中的玩家可以相互的交互起来。开发者也可以使用该技术作为轻功玩法的技术,让玩家可以在三维空间中自由的行走和飞行中等。该技术是一个完成的基础技术,开发者可以在上层做更多的玩法定制,扩展性比较高。
参见图3,在本发明实施例中还提供了一种游戏3D场景编辑装置,所述装置包括:
第一获取单元10,用于获取游戏场景的场景文件;
转换单元20,用于对所述场景文件进行体素数组转换,获得体素文件;
第二获取单元30,用于响应于将目标虚拟物体放置在所述游戏场景,在所述体素文件中获取与所述目标虚拟物体相匹配的体素数据;
添加单元40,用于基于所述体素数据,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
可选地,所述转换单元包括:
转换子单元,用于通过栅格化三角形将所述场景文件中的场景转换为体素数组;
过滤子单元,用于对所述体素数据进行过滤,获得目标区域,所述目标区域表示虚拟物品的可放置区域;
生成子单元,用于生成所述目标区域的轮廓,并对所述轮廓进行分割,获得多边形网格;
处理子单元,用于对所述多边形网格进行细节处理,获得体素文件。
可选地,所述添加单元包括:
第一获取子单元,用于获取用户针对所述目标虚拟物体的操作指令;
分析子单元,用于基于所述体素数据,对所述操作指令进行分析,获取与所述目标虚拟物体对应的三维数据;
判断子单元,用于基于所述三维数据,判断所述操作指令的合法性;
添加子单元,用于若合法,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
可选地,所述添加子单元具体用于:
基于所述三维数据,获取所述目标虚拟物体在所述游戏场景对应的3D虚拟图像中的路径信息;
基于所述路径信息,将所述所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
可选地,所述装置还包括:
压缩单元,用于对所述体素文件进行压缩,所述压缩单元具体用于:
将体素之间的间隔小于预设间隔阈值的题述进行合并;
将体素超过飞行高度阈值的体素进行过滤;
将不连通区域的体素进行合并,获得合并后的体素。
可选地,所述装置还包括:
管理单元,用于对所述体素文件进行内存管理,包括以下的一种:
采用四叉树的方式对所述体素文件进行内存管理;
将每个体素坐标存储所有的体素信息;
利用目标数组记录所有的体素信息。
可选地,所述装置还包括:
测试单元,用于对所述体素文件进行压力测试,所述测试单元具体用于:
对目标数量的用户对所述体素文件进行调用,获得调用结果;
基于所述调用结果进行压力测试,获得压力测试结果。
基于前述实施例,本申请的实施例提供一种计算机可读存储介质,计算机可读存储介质存储有一个或者多个程序,该一个或者多个程序可被一个或者多个处理器执行,以实现如上任一项的游戏3D场景编辑方法步骤。
本发明实施例还提供了一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现的游戏3D场景编辑方法的步骤。
需要说明的是,上述处理器或CPU可以为特定用途集成电路(ApplicationSpecific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理装置(Digital Signal Processing Device,DSPD)、可编程逻辑装置(Programmable Logic Device,PLD)、现场可编程门阵列(Field Programmable GateArray,FPGA)、中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器中的至少一种。可以理解地,实现上述处理器功能的电子器件还可以为其它,本申请实施例不作具体限定。
需要说明的是,上述计算机存储介质/存储器可以是只读存储器(ReadOnlyMemory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性随机存取存储器(Ferromagnetic Random Access Memory,FRAM)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(Compact Disc Read-Only Memory,CD-ROM)等存储器;也可以是包括上述存储器之一或任意组合的各种终端,如移动电话、计算机、平板设备、个人数字助理等。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理模块中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种游戏3D场景编辑方法,其特征在于,所述方法包括:
获取游戏场景的场景文件;
对所述场景文件进行体素数组转换,获得体素文件;
响应于将目标虚拟物体放置在所述游戏场景,在所述体素文件中获取与所述目标虚拟物体相匹配的体素数据;
基于所述体素数据,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
2.根据权利要求1所述的方法,其特征在于,所述对所述场景文件进行体素数组转换,获得体素文件,包括:
通过栅格化三角形将所述场景文件中的场景转换为体素数组;
对所述体素数据进行过滤,获得目标区域,所述目标区域表示虚拟物品的可放置区域;
生成所述目标区域的轮廓,并对所述轮廓进行分割,获得多边形网格;
对所述多边形网格进行细节处理,获得体素文件。
3.根据权利要求1所述的方法,其特征在于,所述基于所述体素数据,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中,包括:
获取用户针对所述目标虚拟物体的操作指令;
基于所述体素数据,对所述操作指令进行分析,获取与所述目标虚拟物体对应的三维数据;
基于所述三维数据,判断所述操作指令的合法性;
若合法,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
4.根据权利要求3所述的方法,其特征在于,所述将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中,包括:
基于所述三维数据,获取所述目标虚拟物体在所述游戏场景对应的3D虚拟图像中的路径信息;
基于所述路径信息,将所述所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述体素文件进行压缩,包括:
将体素之间的间隔小于预设间隔阈值的题述进行合并;
将体素超过飞行高度阈值的体素进行过滤;
将不连通区域的体素进行合并,获得合并后的体素。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述体素文件进行内存管理,包括以下的一种:
采用四叉树的方式对所述体素文件进行内存管理;
将每个体素坐标存储所有的体素信息;
利用目标数组记录所有的体素信息。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述体素文件进行压力测试,包括:
对目标数量的用户对所述体素文件进行调用,获得调用结果;
基于所述调用结果进行压力测试,获得压力测试结果。
8.一种游戏3D场景编辑装置,其特征在于,所述装置包括:
第一获取单元,用于获取游戏场景的场景文件;
转换单元,用于对所述场景文件进行体素数组转换,获得体素文件;
第二获取单元,用于响应于将目标虚拟物体放置在所述游戏场景,在所述体素文件中获取与所述目标虚拟物体相匹配的体素数据;
添加单元,用于基于所述体素数据,将所述目标虚拟物体添加到所述游戏场景对应的3D虚拟图像中。
9.一种存储介质,其特征在于,所述存储介质存储有可执行指令,所述指令被处理器执行时实现如权利要求1-7中任意一项所述的游戏3D场景编辑方法。
10.一种电子设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于执行所述程序,所述程序具体用于实现如权利要求1-7中任意一项所述的游戏3D场景编辑方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110286337.3A CN112973127A (zh) | 2021-03-17 | 2021-03-17 | 一种游戏3d场景编辑方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110286337.3A CN112973127A (zh) | 2021-03-17 | 2021-03-17 | 一种游戏3d场景编辑方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112973127A true CN112973127A (zh) | 2021-06-18 |
Family
ID=76332687
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110286337.3A Pending CN112973127A (zh) | 2021-03-17 | 2021-03-17 | 一种游戏3d场景编辑方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112973127A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113413602A (zh) * | 2021-07-20 | 2021-09-21 | 网易(杭州)网络有限公司 | 一种游戏中水下室内环境的处理方法及装置 |
WO2023051671A1 (zh) * | 2021-09-30 | 2023-04-06 | 上海莉莉丝互娱网络科技有限公司 | 基于体素数据的数据处理方法、服务器、介质及计算机程序产品 |
CN117357894A (zh) * | 2023-11-01 | 2024-01-09 | 北京畅游天下网络技术集团有限公司 | 一种三维场景生成方法、装置、设备及介质 |
CN117398690A (zh) * | 2023-10-20 | 2024-01-16 | 北京畅游悦想互动软件技术有限公司 | 一种行程生成方法、装置、设备及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1655191A (zh) * | 2005-02-25 | 2005-08-17 | 浙江大学 | 基于可编程图形硬件的多边形网格模型的快速体素化方法 |
US20150165323A1 (en) * | 2013-12-17 | 2015-06-18 | Microsoft Corporation | Analog undo for reversing virtual world edits |
CN107240155A (zh) * | 2016-03-29 | 2017-10-10 | 腾讯科技(深圳)有限公司 | 一种模型对象构建的方法、服务器及系统 |
CN108136257A (zh) * | 2015-08-17 | 2018-06-08 | 乐高公司 | 创建虚拟游戏环境的方法和采用该方法的互动游戏系统 |
CN109118586A (zh) * | 2018-08-08 | 2019-01-01 | 珠海金山网络游戏科技有限公司 | 逻辑地图的数据处理方法、装置、电子设备及存储介质 |
CN109701273A (zh) * | 2019-01-16 | 2019-05-03 | 腾讯科技(北京)有限公司 | 游戏数据的处理方法、装置、电子设备及可读存储介质 |
US20190392630A1 (en) * | 2018-06-20 | 2019-12-26 | Google Llc | Automated understanding of three dimensional (3d) scenes for augmented reality applications |
-
2021
- 2021-03-17 CN CN202110286337.3A patent/CN112973127A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1655191A (zh) * | 2005-02-25 | 2005-08-17 | 浙江大学 | 基于可编程图形硬件的多边形网格模型的快速体素化方法 |
US20150165323A1 (en) * | 2013-12-17 | 2015-06-18 | Microsoft Corporation | Analog undo for reversing virtual world edits |
CN108136257A (zh) * | 2015-08-17 | 2018-06-08 | 乐高公司 | 创建虚拟游戏环境的方法和采用该方法的互动游戏系统 |
CN107240155A (zh) * | 2016-03-29 | 2017-10-10 | 腾讯科技(深圳)有限公司 | 一种模型对象构建的方法、服务器及系统 |
US20190392630A1 (en) * | 2018-06-20 | 2019-12-26 | Google Llc | Automated understanding of three dimensional (3d) scenes for augmented reality applications |
CN109118586A (zh) * | 2018-08-08 | 2019-01-01 | 珠海金山网络游戏科技有限公司 | 逻辑地图的数据处理方法、装置、电子设备及存储介质 |
CN109701273A (zh) * | 2019-01-16 | 2019-05-03 | 腾讯科技(北京)有限公司 | 游戏数据的处理方法、装置、电子设备及可读存储介质 |
Non-Patent Citations (1)
Title |
---|
阿苏勒: ""源码分析UE4的导航系统(1):场景体素化"", Retrieved from the Internet <URL:https://cloud.tencent.com/developer/article/1642373> * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113413602A (zh) * | 2021-07-20 | 2021-09-21 | 网易(杭州)网络有限公司 | 一种游戏中水下室内环境的处理方法及装置 |
CN113413602B (zh) * | 2021-07-20 | 2024-05-10 | 网易(杭州)网络有限公司 | 一种游戏中水下室内环境的处理方法及装置 |
WO2023051671A1 (zh) * | 2021-09-30 | 2023-04-06 | 上海莉莉丝互娱网络科技有限公司 | 基于体素数据的数据处理方法、服务器、介质及计算机程序产品 |
CN117398690A (zh) * | 2023-10-20 | 2024-01-16 | 北京畅游悦想互动软件技术有限公司 | 一种行程生成方法、装置、设备及介质 |
CN117398690B (zh) * | 2023-10-20 | 2024-04-09 | 北京畅游悦想互动软件技术有限公司 | 一种行程生成方法、装置、设备及介质 |
CN117357894A (zh) * | 2023-11-01 | 2024-01-09 | 北京畅游天下网络技术集团有限公司 | 一种三维场景生成方法、装置、设备及介质 |
CN117357894B (zh) * | 2023-11-01 | 2024-03-29 | 北京畅游天下网络技术集团有限公司 | 一种三维场景生成方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109523621B (zh) | 对象的加载方法和装置、存储介质、电子装置 | |
CN112973127A (zh) | 一种游戏3d场景编辑方法及装置 | |
JP7125992B2 (ja) | 現実世界の仮想現実マップを用いた仮想現実(vr)ゲーム環境の構築 | |
Cao et al. | 3d object classification via spherical projections | |
CN101414383B (zh) | 图像处理设备和图像处理方法 | |
KR102433857B1 (ko) | 혼합 현실에서 동적 가상 콘텐츠들을 생성하기 위한 디바이스 및 방법 | |
KR20230111188A (ko) | 장면 레이아웃 추정 | |
CN105493154A (zh) | 用于确定增强现实环境中的平面的范围的系统和方法 | |
Montero et al. | Designing and implementing interactive and realistic augmented reality experiences | |
CN112717404B (zh) | 虚拟对象的移动处理方法、装置、电子设备及存储介质 | |
CN106125938A (zh) | 一种信息处理方法及电子设备 | |
CN110389703A (zh) | 虚拟物品的获取方法、装置、终端和存储介质 | |
US20180091629A1 (en) | Virtual and augmented reality interface | |
CN114299220A (zh) | 光照贴图的数据生成方法、装置、设备、介质及程序产品 | |
JP2020018620A (ja) | 仮想空間における音声生成プログラム、四分木の生成方法、および音声生成装置 | |
CN112070901A (zh) | 一种园林的ar场景构建方法、装置、存储介质及终端 | |
CN113018865B (zh) | 攀爬线生成方法、装置、计算机设备及存储介质 | |
CN113134230B (zh) | 一种虚拟对象的分簇方法、装置、存储介质和电子装置 | |
TW202312100A (zh) | 網格生成方法、電子設備及電腦可讀儲存介質 | |
CN114742970A (zh) | 虚拟三维模型的处理方法、非易失性存储介质及电子装置 | |
An | Automatic 2.5 d cartoon modelling | |
CN112717395B (zh) | 音频绑定方法、装置、设备以及存储介质 | |
US20220335691A1 (en) | Computer-implemented methods for simulating deformation in real-world scene, electronic devices, and computer-readable storage medium | |
Dahl | Real-time Object Removal in Augmented Reality | |
CN115888079A (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 |