CN107240155B - 一种模型对象构建的方法、服务器及3d应用*** - Google Patents
一种模型对象构建的方法、服务器及3d应用*** Download PDFInfo
- Publication number
- CN107240155B CN107240155B CN201610187835.1A CN201610187835A CN107240155B CN 107240155 B CN107240155 B CN 107240155B CN 201610187835 A CN201610187835 A CN 201610187835A CN 107240155 B CN107240155 B CN 107240155B
- Authority
- CN
- China
- Prior art keywords
- voxel
- server
- building
- modeling data
- user equipment
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/08—Volume rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/30—Polynomial surface description
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/04—Architectural design, interior design
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Algebra (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种模型对象构建的方法,该方法应用于3D应用***,3D应用***包括服务器和用户设备,所述用户设备基于多边形网格的形式进行模型对象展示,所述服务器基于体素的形式进行模型对象存储,所述方法包括:所述服务器接收所述用户设备发送的目标模型对象的构建指令;所述服务器根据所述构建指令,确定所述目标模型对象的体素建模数据;所述服务器根据所述体素建模数据,构建体素形式的所述目标模型对象,所述目标模型对象在所述用户设备中以所述多边形网格的形式展示,所述目标模型对象在所述服务器中以所述体素的形式存储。服务器可以以体素形式进行模型对象构建,从而减少了计算量,提高了模型对象构建的效率。
Description
技术领域
本发明涉及3D应用技术领域,具体涉及一种模型对象构建的方法、服务器及***。
背景技术
随着交互式应用的快速发展,交互式应用的种类越来越多,其中,建筑建造类的交互式应用也备受用户青睐,而且建筑建造类的应用场景被广泛引入到多人在线交互式应用中。
现有技术中用户设备端对显示精度有较高的要求,所以用户设备端通常采用显示精度较高的模型处理算法,服务器端为了与用户设备端保持一致,就需要采用与用户设备端相同的模型构建处理算法,这样就导致服务器的计算量非常大,会降低模型对象构建效率。
发明内容
本发明实施例提供一种模型对象构建的方法,服务器和用户设备的模型构建算法,逻辑和表现分离,这样服务器即可以做到数据行为上与用户设备一致,又可以以体素的形式进行模型对象存储,从而减少了计算量,提高了模型对象构建的效率。本发明实施例还提供了相应的服务器和***。
本发明第一方面提供一种模型对象构建的方法,所述方法应用于3D应用***,所述3D应用***包括服务器和用户设备,所述用户设备基于多边形网格的形式进行模型对象展示,所述服务器基于体素的形式进行模型对象存储,所述方法包括:
所述服务器接收所述用户设备发送的目标模型对象的构建指令;
所述服务器根据所述构建指令,确定所述目标模型对象的体素建模数据;
所述服务器根据所述体素建模数据,构建体素形式的所述目标模型对象。
本发明第二方面提供一种服务器,所述服务器应用于3D应用***,所述 3D应用***还包括用户设备,所述用户设备基于多边形网格的形式进行模型对象展示,所述服务器基于体素的形式进行模型对象存储,所述服务器包括:
接收单元,用于接收所述用户设备发送的目标模型对象的构建指令;
确定单元,用于根据所述接收单元接收的所述构建指令,确定所述目标模型对象的体素建模数据;
发送单元,用于根据所述确定单元确定的所述体素建模数据,构建体素形式的所述目标模型对象。
本发明第三方面提供一种3D应用***,包括服务器和用户设备,所述用户设备基于多边形网格的形式进行模型对象展示,所述服务器基于体素的形式进行模型对象存储;
所述服务器为上述第二方面所述的服务器。
与现有技术中服务器使用与用户设备相同的模型处理算法进行模型构建,导致服务器的计算量大,模型构建效率低相比,本发明实施例中,服务器和用户设备的模型构建算法,逻辑和表现分离,用户设备以多边形网络的形式展示模型对象,保证了显示精度,服务器模型构建的逻辑与用户设备一致,只是建模数据用体素形式表示,虽然表示形式不同,但服务器可以做到数据行为上与用户设备一致,从而可以有效验证怪兽和人物等的模拟对象在游戏场景设置的合理的范围内移动,不会出现穿墙等不合理的行为,同时以体素的形式构建模型,服务器可以减少了计算量,提高了模型对象构建的效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是基于多边形网格的模型对象的一示意图;
图2是基于体素的模型对象的一示意图;
图3是本发明实施例中3D应用***的一实施例示意图;
图4是本发明实施例中模型对象构建的方法的一实施例示意图;
图5是本发明实施例中模型对象分层的一场景示意图;
图6是本发明实施例中模型对象分区替换的一场景示意图;
图7是本发明实施例中服务器的一实施例示意图;
图8是本发明实施例中服务器的另一实施例示意图;
图9是本发明实施例中服务器的另一实施例示意图;
图10是本发明实施例中服务器的另一实施例示意图。
具体实施方式
本发明实施例提供一种模型对象构建的方法,服务器可以以体素算法进行模型对象构建,从而减少了计算量,提高了模型对象构建的效率。本发明实施例还提供了相应的服务器和***。以下分别进行详细说明。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例所描述的模型对象构建的方法,多应用于建筑建造类游戏中,或者包含建筑建造类的大型多人在线角色扮演游戏(Massively Multiplayer Online RolePlaying Game,MMORPG)中,在MMORPG中,玩家通常需要构建防御工事等建筑模型对象,以便于开展游戏中的攻防。本发明实施例中重点介绍模型对象的构建。
本发明实施例中,考虑到用户设备侧的显示精度,所以用户设备基于多边形网格算法进行模型对象展示,服务器端不需要过多的考虑模型精度,但对计算速度要求很高,所以服务器基于体素算法进行模型对象存储,模型对象的构建可以分为逻辑和表现两个部分,用户设备和服务器中模型对象的构建逻辑是相同的,只是建模数据的表现不同,用户设备侧的建模数据是多边形网格建模数据,所以最终建好的模型对象以多边形网格的形式展示,服务器侧的建模数据是体素建模数据,所以最终建好的模型的形式是体素的形式,用户设备以多边形网格的形式展示模型对象,服务器中以体素的形式存储模型对象,这样,既能保证用户设备侧的显示精度,又能降低服务器侧的计算量,最重要的是保证了用户设备和服务器两端模型对象构建高度和位置的一致,虽然服务器侧的模型对象的显示精度不好,但不影响对怪兽和人物等的模拟对象在建筑模型对象中运动合理性的判断。因此在后续怪兽和人物等的模拟对象在建筑模型对象中运动时,服务器可以根据服务器侧存储的建筑模型来保证怪兽和人物等的模拟对象在游戏场景设置的合理的范围内移动,不会出现穿墙等不合理的行为。
服务器侧存储建筑模型对象的目的就是要验证后续怪兽和人物等的模拟对象在建筑模型对象中的移动是否合理,若合理,则服务器会指示用户设备侧表现出模拟对象的正常移动,若不合理,则服务器不允许用户设备侧的模拟对象做不合理的移动。
用户设备侧和服务器侧模型对象的构建过程基本是一致的,只是建模数据的表现不同,用户设备侧的建模数据是多边形网格建模数据,所以最终建好的模型对象以多边形网格的形式展示,服务器侧的建模数据是体素建模数据,所以最终建好的模型的形式是体素的形式,在后期的表现阶段用户设备侧按照多边形网格Polygon Mesh的形式展示,服务器侧按照体素Voxel的形式存储。
多边形网格可以是基于传统3D引擎的Polygon Mesh。传统的Polygon Mesh 解决方案如图1所示,通过将模型对象分解成无数的小多边形,来对模型对象进行建模描述。Polygon Mesh的优势在于多边形的分解可以非常灵活,对于模型细节的描绘可以非常精确,是传统客户端3D引擎的一致选择。
体素Voxel,顾名思义是体积的像素。用来在三维空间中表示一个显示基本点的单位。类似于二维平面下的pixel(像素)。如图2所示,模型对象的体素表现形式。从图2和图1的对比中可以看出,体素的显示精度不如多边形网格的显示精度高。Voxel方案的优势在于可以做到服务器和用户设备一致,且数据量和计算量都比较小,适合在服务器端使用做大规模运算。
图3为本发明实施例中3D应用***。如图3所示,3D应用***包括服务器和用户设备,该服务器可以是游戏服务器,用户设备可以有多个,不限于图3 中所示的三个,玩家在用户设备上构建建筑模型时,用户设备会根据玩家的指令,确定玩家所指定的目标模型对象的多边形网格建模数据,然后,用户设备根据所述多边形网格建模数据,构建多边形网格形式的目标模型对象,用户设备以多边形网格的形式展示该目标模型对象。服务器接收用户设备发送的目标模型对象的构建指令,也会根据所述构建指令,确定所述目标模型对象的体素建模数据;根据所述体素建模数据,构建体素形式的目标模型对象,然后,服务器会存储该体素形式的目标模型对象。图4为本发明实施例中模型对象构建的方法的一实施例示意图。
如图4所示,本发明实施例中模型对象构建的方法的一实施例包括:
101、服务器接收用户设备发送的目标模型对象的构建指令。
目标模型对象可以是建筑模型对象的一个组成部分,例如:一个房顶或者一堵墙。
102、服务器根据所述构建指令,确定所述目标模型对象的体素建模数据。
103、服务器根据所述体素建模数据,构建体素形式的所述目标模型对象。
所述目标模型对象在所述用户设备中以所述多边形网格的形式展示,所述目标模型对象在所述服务器中以所述体素的形式存储。
与现有技术中服务器使用与用户设备相同的模型处理算法进行模型构建,导致服务器的计算量大,模型构建效率低相比,本发明实施例中,服务器和用户设备的模型构建算法,逻辑和表现分离,用户设备以多边形网络的形式展示模型对象,保证了显示精度,服务器模型构建的逻辑与用户设备一致,只是建模数据用体素形式表示,虽然表示形式不同,但服务器可以做到数据行为上与用户设备一致,从而可以有效验证怪兽和人物等的模拟对象在游戏场景设置的合理的范围内移动,不会出现穿墙等不合理的行为,同时以体素的形式构建模型,服务器可以减少了计算量,提高了模型对象构建的效率。
考虑到模型对象都是立体的,所以为了提高计算效率,可以为目标模型对象分层,这样所述服务器根据所述构建指令,确定所述目标模型对象的体素建模数据,可以包括:
所述服务器确定所述目标模型对象中每个体素所属的层;
所述服务器确定每层体素的体素建模数据,并根据所述每层体素的体素建模数据,确定所述目标模型对象的体素建模数据。
目标模型对象的分层(layer)可以参阅图5进行理解。如图5所示,可以将目标模型对象从下至上划分为几个层layer,如图5所示的layer0、layer1和layer2,当然不限于图5所示的几个分层,layer可以根据需求划分。因服务器端是基于体素的,所以目标模型对象的体素可以是分布于各个layer的,体素在各个layer 上可以以坐标的形式进行定位,如以(x,y,layer)三元组对voxel位置进行定位,以(x,y,z,layer)四元组描述移动对象在空间的位置,layer=0的voxel 为地表层,voxel记录上沿(upward)高度,layer>0的voxel为建筑层,voxel 记录上(upward)下(downward)沿高度。
以坐标的形式定位体素后,所述服务器确定每层体素的体素建模数据,可以包括:
所述服务器确定所述每层体素中各个体素的坐标;
所述服务器根据所述各个体素的坐标,确定所述每层体素的体素建模数据。
根据体素的坐标,确定体素的体素建模数据,可以确定出体素在地图上的位置和空间上的位置。从而会确定出目标模型对象的体素建模数据,从而确定出目标模型在游戏场景中的地理位置和空间位置。
可选地,在以上任一实现方案的基础上,本发明实施例提供的模型对象构建的方法还包括:
所述服务器确定所述目标模型对象在建筑模型对象中所对应的目标区块,所述建筑模型对象包括多个区块;
所述服务器根据所述构建指令,确定所述目标模型对象的体素建模数据之后,所述方法还包括:
所述服务器用所述目标模型对象替换所述目标区块所对应的原始模型对象。
本发明实施例中,如图6所示,建筑模型对象可以包括多个区块,若玩家只是想修改当前的建筑模型对象,要用一个新的模型对象去替换建筑模型对象中的一个部分,则可以构建该新的模型对象,该新的模型对象在本发明实施例中为目标模型对象,所以服务器在确定目标模型对象所对应的区块后,可以用目标模型对象替换所述目标区块所对应的原始模型对象,从而得到更新的建筑模型对象。
可选地,本发明实施例提供的模型对象构建的方法还包括:所述服务器确定所述目标模型对象在建筑模型对象中所对应的目标区块,所述建筑模型对象包括多个区块;
所述服务器根据所述构建指令,确定所述目标模型对象的体素建模数据之后,所述方法还包括:
所述服务器用所述目标模型对象填充所述目标区块所对应的空间。
本发明实施例中,若目标区块是空白的,没有原始模型对象,则可以直接用目标模型对象去填充该目标区块所对应的空间。
动态建筑建造过程中,其实只是改变了整个地图场景中的一小部分数据,通过引入区块切割(Sector)的概念,使得***可以支持建造建筑时,只改变一部分3D场景数据的效果。更新方案可以是:
以固定边长(N)为单位的正方形,将整个地图分解为多个地图区块(map sector),建筑(buiding)数据,也按照同样的格式进行描述。
每个地图区块(map sector)为N*N的正方形在xy垂直区域上的投影,当有建筑需要建造时,生成一个新的建筑区块(sector building),通过融合建筑数据以及地图数据,形成新的地形,使用buiding sector替换掉目标区块原有位置的map sector,若原有位置没有map sector,则直接将buiding sector填充在目标区块的位置。
其中,所述服务器确定所述目标模型对象在建筑模型对象中所对应的目标区块,可以包括:
所述服务器确定所述目标模型对象的坐标;
所述服务器根据所述目标模型对象的坐标确定所述目标模型对象在建筑模型对象中所对应的目标区块。
本发明实施例中,可以根据目标模型对象在地图中的坐标确定该目标模型对象在建筑模型对象中所对应的目标区块。
参阅图7,本发明实施例提供的服务器20,应用于3D应用***,所述3D应用***还包括用户设备,所述用户设备基于多边形网格的形式进行模型对象展示,所述服务器基于体素的形式进行模型对象存储,所述服务器20的一实施例包括:
接收单元201,用于接收所述用户设备发送的目标模型对象的构建指令;
确定单元202,用于根据所述接收单元201接收的所述构建指令,确定所述目标模型对象的体素建模数据;
构建单元203,用于根据所述确定单元202确定的所述体素建模数据,构建体素形式的所述目标模型对象。
本发明实施例提供的服务器,接收单元201接收所述用户设备发送的目标模型对象的构建指令;确定单元202根据所述接收单元201接收的所述构建指令,确定所述目标模型对象的体素建模数据;构建单元203根据所述确定单元202确定的所述体素建模数据,构建体素形式的所述目标模型对象。与现有技术中服务器使用与用户设备相同的模型处理算法进行模型构建,导致服务器的计算量大,模型构建效率低相比,本发明实施例中,服务器和用户设备的模型构建算法,逻辑和表现分离,用户设备以多边形网络的形式展示模型对象,保证了显示精度,服务器模型构建的逻辑与用户设备一致,只是建模数据用体素形式表示,虽然表示形式不同,但服务器可以做到数据行为上与用户设备一致,从而可以有效验证怪兽和人物等的模拟对象在游戏场景设置的合理的范围内移动,不会出现穿墙等不合理的行为,同时以体素的形式构建模型,服务器可以减少了计算量,提高了模型对象构建的效率。
可选地,所述确定单元202用于:
确定所述目标模型对象中每个体素所属的层;
确定每层体素的体素建模数据,并根据所述每层体素的体素建模数据,确定所述目标模型对象的体素建模数据。
可选地,所述确定单元202用于:
确定所述每层体素中各个体素的坐标;
根据所述各个体素的坐标,确定所述每层体素的体素建模数据。
可选地,参阅图8,本发明实施例提供的服务器的另一实施例还包括替换单元204,
所述确定单元202,还用于确定所述目标模型对象在建筑模型对象中所对应的目标区块,所述建筑模型对象包括多个区块;
所述替换单元204,用于用所述目标模型对象的体素建模数据替换所述确定单元202确定的所述目标区块所对应的原始体素建模数据。
可选地,参阅图9,本发明实施例提供的服务器的另一实施例还包括填充单元205,
所述确定单元202,还用于确定所述目标模型对象在建筑模型对象中所对应的目标区块,所述建筑模型对象包括多个区块;
所述填充单元205,用于用所述目标模型对象的体素建模数据填充所述确定单元202确定的所述目标区块所对应的数据存储空间。
可选地,在上述图8对应的实施例的基础上,
所述确定单元202用于:
确定所述目标模型对象的坐标;
根据所述目标模型对象的坐标确定所述目标模型对象在建筑模型对象中所对应的目标区块。
图10是本发明实施例提供的服务器20的结构示意图。所述服务器应用于 3D应用***,所述3D应用***还包括用户设备,所述用户设备基于多边形网格的形式进行模型对象展示,所述服务器基于体素的形式进行模型对象存储,所述服务器20包括处理器210、存储器250和收发器230,存储器250可以包括只读存储器和随机存取存储器,并向处理器210提供操作指令和数据。存储器250 的一部分还可以包括非易失性随机存取存储器(NVRAM)。
在一些实施方式中,存储器250存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:
在本发明实施例中,通过调用存储器250存储的操作指令(该操作指令可存储在操作***中),
所述收发器230用于接收所述用户设备发送的目标模型对象的构建指令;
所述处理器210用于根据所述构建指令,确定所述目标模型对象的体素建模数据,根据所述体素建模数据,构建体素形式的所述目标模型对象。
与现有技术中服务器使用与用户设备相同的模型处理算法进行模型构建,导致服务器的计算量大,模型构建效率低相比,本发明实施例中,服务器和用户设备的模型构建算法,逻辑和表现分离,用户设备以多边形网络的形式展示模型对象,保证了显示精度,服务器模型构建的逻辑与用户设备一致,只是建模数据用体素形式表示,虽然表示形式不同,但服务器可以做到数据行为上与用户设备一致,从而可以有效验证怪兽和人物等的模拟对象在游戏场景设置的合理的范围内移动,不会出现穿墙等不合理的行为,同时以体素的形式构建模型,服务器可以减少了计算量,提高了模型对象构建的效率。
处理器210控制服务器20的操作,处理器210还可以称为CPU(Central ProcessingUnit,中央处理单元)。存储器250可以包括只读存储器和随机存取存储器,并向处理器210提供指令和数据。存储器250的一部分还可以包括非易失性随机存取存储器(NVRAM)。具体的应用中服务器20的各个组件通过总线***220耦合在一起,其中总线***220除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线***220。
上述本发明实施例揭示的方法可以应用于处理器210中,或者由处理器210 实现。处理器210可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器210中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器210可以是通用处理器、数字信号处理器 (DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器250,处理器210读取存储器250中的信息,结合其硬件完成上述方法的步骤。
可选地,所述处理器210用于确定所述目标模型对象中每个体素所属的层;确定每层体素的体素建模数据,并根据所述每层体素的体素建模数据,确定所述目标模型对象的体素建模数据。
可选地,所述处理器210用于确定所述每层体素中各个体素的坐标;根据所述各个体素的坐标,确定所述每层体素的体素建模数据。
可选地,所述处理器210还用于确定所述目标模型对象在建筑模型对象中所对应的目标区块,所述建筑模型对象包括多个区块;用所述目标模型对象替换所述目标区块所对应的原始模型对象。
可选地,所述处理器210还用于确定所述目标模型对象在建筑模型对象中所对应的目标区块,所述建筑模型对象包括多个区块;用所述目标模型对象填充所述目标区块所对应的空间。
可选地,所述处理器210用于确定所述目标模型对象的坐标,根据所述目标模型对象的坐标确定所述目标模型对象在建筑模型对象中所对应的目标区块。
以上的服务器20可以参阅图1至图6部分的相关描述进行理解,本处不做过多赘述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
以上对本发明实施例所提供的模型对象构建的方法、服务器以及***进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种模型对象构建的方法,其特征在于,所述方法应用于3D应用***,所述3D应用***包括服务器和用户设备,所述用户设备基于多边形网格的形式进行模型对象展示,所述服务器基于体素的形式进行模型对象存储,所述服务器具有与所述用户设备相同的模型对象构建逻辑;所述方法包括:
所述服务器接收所述用户设备发送的目标模型对象的构建指令;
所述服务器根据所述构建指令,确定所述目标模型对象的体素建模数据;
所述服务器根据所述体素建模数据,构建体素形式的所述目标模型对象;
所述服务器确定所述目标模型对象在建筑模型对象中所对应的目标区块,所述建筑模型对象包括多个区块;在所述服务器根据所述构建指令,确定所述目标模型对象的体素建模数据之后,所述服务器用所述目标模型对象替换所述目标区块所对应的原始模型对象;其中,以固定边长N为单位的正方形,将整个地图分解为多个地图区块,所述地图区块是根据N×N的正方形在xy垂直区域上的投影来确定的;当有建筑需要建造时,生成一个新的建筑区块,并利用所述新的建筑区块替换掉所述目标区块原有位置的地图区块。
2.根据权利要求1所述的方法,其特征在于,所述服务器根据所述构建指令,确定所述目标模型对象的体素建模数据,包括:
所述服务器确定所述目标模型对象中每个体素所属的层;
所述服务器确定每层体素的体素建模数据,并根据所述每层体素的体素建模数据,确定所述目标模型对象的体素建模数据;
其中,所述体素所属的层是通过将所述目标模型对象从下至上划分得到的。
3.根据权利要求2所述的方法,其特征在于,所述服务器确定每层体素的体素建模数据,包括:
所述服务器确定所述每层体素中各个体素的坐标;
所述服务器根据所述各个体素的坐标,确定所述每层体素的体素建模数据。
4.根据权利要求1-3任一所述的方法,其特征在于,所述方法还包括:
所述服务器确定所述目标模型对象在建筑模型对象中所对应的目标区块,所述建筑模型对象包括多个区块;
所述服务器根据所述构建指令,确定所述目标模型对象的体素建模数据之后,所述方法还包括:
所述服务器用所述目标模型对象填充所述目标区块所对应的空间。
5.一种服务器,其特征在于,所述服务器应用于3D应用***,所述3D应用***还包括用户设备,所述用户设备基于多边形网格的形式进行模型对象展示,所述服务器基于体素的形式进行模型对象存储,所述服务器具有与所述用户设备相同的模型对象构建逻辑,所述服务器包括:
接收单元,用于接收所述用户设备发送的目标模型对象的构建指令;
确定单元,用于根据所述接收单元接收的所述构建指令,确定所述目标模型对象的体素建模数据;
发送单元,用于根据所述确定单元确定的所述体素建模数据,构建体素形式的所述目标模型对象;
所述服务器还包括替换单元,
所述确定单元,还用于确定所述目标模型对象在建筑模型对象中所对应的目标区块,所述建筑模型对象包括多个区块;
所述替换单元,用于用所述目标模型对象的体素建模数据替换所述确定单元确定的所述目标区块所对应的原始体素建模数据;其中,以固定边长N为单位的正方形,将整个地图分解为多个地图区块,所述地图区块是根据N×N的正方形在xy垂直区域上的投影来确定的;当有建筑需要建造时,生成一个新的建筑区块,并利用所述新的建筑区块替换掉所述目标区块原有位置的地图区块。
6.根据权利要求5所述的服务器,其特征在于,
所述确定单元用于:
确定所述目标模型对象中每个体素所属的层;
确定每层体素的体素建模数据,并根据所述每层体素的体素建模数据,确定所述目标模型对象的体素建模数据;
其中,所述体素所属的层是通过将所述目标模型对象从下至上划分得到的。
7.根据权利要求6所述的服务器,其特征在于,
所述确定单元用于:
确定所述每层体素中各个体素的坐标;
根据所述各个体素的坐标,确定所述每层体素的体素建模数据。
8.根据权利要求5-7任一所述的服务器,其特征在于,所述服务器还包括填充单元,
所述确定单元,还用于确定所述目标模型对象在建筑模型对象中所对应的目标区块,所述建筑模型对象包括多个区块;
所述填充单元,用于用所述目标模型对象的体素建模数据填充所述确定单元确定的所述目标区块所对应的数据存储空间。
9.一种3D应用***,其特征在于,包括服务器和用户设备,所述用户设备基于多边形网格的形式进行模型对象展示,所述服务器基于体素的形式进行模型对象存储;
所述服务器为权利要求5-8任一所述的服务器。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610187835.1A CN107240155B (zh) | 2016-03-29 | 2016-03-29 | 一种模型对象构建的方法、服务器及3d应用*** |
PCT/CN2017/078353 WO2017167167A1 (zh) | 2016-03-29 | 2017-03-28 | 模型对象构建的方法、服务器及*** |
KR1020187016828A KR102096196B1 (ko) | 2016-03-29 | 2017-03-28 | 모델 오브젝트 구성 방법, 서버, 및 시스템 |
US15/984,649 US10719985B2 (en) | 2016-03-29 | 2018-05-21 | Model object building method, server, and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610187835.1A CN107240155B (zh) | 2016-03-29 | 2016-03-29 | 一种模型对象构建的方法、服务器及3d应用*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107240155A CN107240155A (zh) | 2017-10-10 |
CN107240155B true CN107240155B (zh) | 2019-02-19 |
Family
ID=59962594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610187835.1A Active CN107240155B (zh) | 2016-03-29 | 2016-03-29 | 一种模型对象构建的方法、服务器及3d应用*** |
Country Status (4)
Country | Link |
---|---|
US (1) | US10719985B2 (zh) |
KR (1) | KR102096196B1 (zh) |
CN (1) | CN107240155B (zh) |
WO (1) | WO2017167167A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108245894B (zh) * | 2017-12-29 | 2019-04-30 | 网易(杭州)网络有限公司 | 信息处理方法及装置、存储介质、电子设备 |
CN108245885B (zh) | 2017-12-29 | 2019-03-08 | 网易(杭州)网络有限公司 | 信息处理方法、装置、移动终端和存储介质 |
CN111714895B (zh) * | 2020-06-29 | 2021-07-23 | 天津亚克互动科技有限公司 | 游戏数据的处理方法及装置、存储介质、计算机设备 |
CN112973127A (zh) * | 2021-03-17 | 2021-06-18 | 北京畅游创想软件技术有限公司 | 一种游戏3d场景编辑方法及装置 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5503149A (en) * | 1990-07-09 | 1996-04-02 | Beavin; William C. | Computer simulation of live organ using arthroscopic and/or laparoscopic data |
US6278460B1 (en) * | 1998-12-15 | 2001-08-21 | Point Cloud, Inc. | Creating a three-dimensional model from two-dimensional images |
US7890573B2 (en) | 2005-11-18 | 2011-02-15 | Toshiba Medical Visualization Systems Europe, Limited | Server-client architecture in medical imaging |
CN100438406C (zh) * | 2006-01-23 | 2008-11-26 | 北京航空航天大学 | 一种基于远程渲染的三维模型网络发布方法 |
IL174737A (en) | 2006-04-03 | 2014-12-31 | Camero Tech Ltd | Device and method for visualizing volume in broadband radar |
CN101645176A (zh) * | 2008-08-06 | 2010-02-10 | 刘俊杰 | 一种用于网络的三维图像交互技术 |
CN102197649B (zh) * | 2008-08-29 | 2014-03-26 | 皇家飞利浦电子股份有限公司 | 三维图像数据的动态传送 |
CN101354792A (zh) * | 2008-09-08 | 2009-01-28 | 北京航空航天大学 | 一种保留模型细节特征的轮廓线远程绘制方法 |
CN101430792A (zh) * | 2008-12-04 | 2009-05-13 | 中山大学 | 面向交互式移动三维图形的渐进式显示方法 |
CN102314661A (zh) * | 2011-09-07 | 2012-01-11 | 深圳市酷开网络科技有限公司 | 一种基于云计算的虚拟试穿***及方法 |
US9075913B2 (en) * | 2012-02-27 | 2015-07-07 | Qualcomm Incorporated | Validation of applications for graphics processing unit |
EP2828762A4 (en) * | 2012-03-22 | 2015-11-18 | Hewlett Packard Development Co | CLOUD DATA PROCESSING |
US20140278292A1 (en) | 2013-03-15 | 2014-09-18 | Airbus Operations (Sas) | Method for coupling non-destructive inspection data for a material or structure to an analysis tool |
GB2536062A (en) | 2015-03-06 | 2016-09-07 | Sony Computer Entertainment Inc | System, device and method of 3D printing |
CN113689537A (zh) | 2015-03-12 | 2021-11-23 | 快乐L-领主有限公司 | 用于基于体素的三维建模的***、方法和设备 |
US9672641B2 (en) * | 2015-07-09 | 2017-06-06 | Sirona Dental Systems Gmbh | Method, apparatus, and computer readable medium for removing unwanted objects from a tomogram |
US20170262972A1 (en) * | 2015-11-04 | 2017-09-14 | Intel Corporation | Generating voxel representations and assigning trust metrics for ensuring veracity for use with multiple applications |
-
2016
- 2016-03-29 CN CN201610187835.1A patent/CN107240155B/zh active Active
-
2017
- 2017-03-28 KR KR1020187016828A patent/KR102096196B1/ko active IP Right Grant
- 2017-03-28 WO PCT/CN2017/078353 patent/WO2017167167A1/zh active Application Filing
-
2018
- 2018-05-21 US US15/984,649 patent/US10719985B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2017167167A1 (zh) | 2017-10-05 |
KR102096196B1 (ko) | 2020-04-01 |
US20180268606A1 (en) | 2018-09-20 |
CN107240155A (zh) | 2017-10-10 |
US10719985B2 (en) | 2020-07-21 |
KR20180084907A (ko) | 2018-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107240155B (zh) | 一种模型对象构建的方法、服务器及3d应用*** | |
CN107730583B (zh) | 一种基于三维场景的地形瓦片数据动态调度方法及装置 | |
CN111185009B (zh) | 地图生成方法和装置 | |
CN103970518B (zh) | 一种逻辑窗口的3d渲染方法和装置 | |
EP2745892B1 (en) | Partition of a 3D scene into a plurality of zones processed by a computing resource | |
US20090051686A1 (en) | Simulation of dynamic city environments and a related fabrication method | |
US11704868B2 (en) | Spatial partitioning for graphics rendering | |
US20230410433A1 (en) | Navigation mesh update | |
CN111714895B (zh) | 游戏数据的处理方法及装置、存储介质、计算机设备 | |
CN108837510B (zh) | 信息的展示方法和装置、存储介质、电子装置 | |
JP2007102734A (ja) | 画像処理装置、画像処理方法及びプログラム | |
CN112386911A (zh) | 导航网格生成方法、装置、非易失性存储介质及电子装置 | |
Yoo et al. | Image‐Based Modeling of Urban Buildings Using Aerial Photographs and Digital Maps | |
CN108744520A (zh) | 确定游戏模型摆放位置的方法、装置和电子设备 | |
CN114863040B (zh) | 纹理密集三维场景的lod树构建方法、装置和电子设备 | |
CN111177967A (zh) | 网格单元的批量修改方法,其装置及电子设备 | |
CN113599808B (zh) | 在虚拟场景中构建地形的方法及装置 | |
CN114404948A (zh) | 游戏地图显示方法、装置、电子设备及计算机可读存储介质 | |
CN108280874A (zh) | 刚体内存替代化简的特效处理***、方法、设备及计算机程序产品 | |
JP7368950B2 (ja) | 効率的な建物フットプリント特定のための方法及び装置 | |
JP6110740B2 (ja) | 3次元地図データ生成システム | |
Bender et al. | HW3D: A tool for interactive real-time 3D visualization in GIS supported flood modelling | |
CN117982891A (zh) | 虚拟场景中的路径生成方法、装置、电子设备及存储介质 | |
CN115629368A (zh) | 一种仿真动态点云数据的生成方法和*** | |
JP3934096B2 (ja) | 画像処理装置、画像処理方法、プログラム |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |