基于游戏引擎和倾斜摄影数据的三维实景模型生成方法技术

技术编号:28424078 阅读:163 留言:0更新日期:2021-05-11 18:32
本发明专利技术提供一种基于游戏引擎和倾斜摄影数据的三维实景模型生成方法,包括以下步骤:对3MXB格式文件进行解析,使用三维图形引擎读取3MXB格式文件的头部;调用三维图形引擎的动态链接库,读取3MXB格式文件的主体;分类识别地形信息、贴图信息;对层次细节进行多级拆分;获取不同级别层次细节的顶点信息,转化为三角面模型;获取不同级别层次细节的贴图信息,将贴图信息转化为材质;将三角面模型、材质按照不同层级导入游戏引擎,生成游戏引擎资源;使用游戏引擎生成三维实景模型。本发明专利技术可以解决现有技术中存在的将倾斜摄影数据处理后导入到游戏引擎中建立三维实景模型时,数据格式转换流程冗杂且花费时间较多的技术问题。

【技术实现步骤摘要】
基于游戏引擎和倾斜摄影数据的三维实景模型生成方法
本专利技术涉及计算机三维建模
,具体涉及一种基于游戏引擎和倾斜摄影数据的三维实景模型生成方法。
技术介绍
近年来,倾斜摄影模型已在各个行业得到广泛的利用,尤其在市政公用工程板块,能够高精度地获取地理测量信息,从而真实地反映地物情况。但是,目前的倾斜摄影模型展示软件,往往对计算机硬件需求较高,加载速度较慢。为解决上述问题,可以使用游戏引擎对倾斜摄影数据进行成果展示,这样能够在硬件、效果与精度之间取得一个较好的平衡。目前对倾斜摄影数据通常使用ContextCapture软件进行处理,处理后输出的数据格式为3MXB格式,该格式具有压缩、LOD纹理及模型多重精细度结构的特性,适用于三维建模。但是,如果想将3MXB格式数据导入游戏引擎,还需要使用3dsMAX等软件将3MXB格式转换为FBX格式;而在格式转换的过程中,由于层级较多,会导致数据格式转化流程冗杂,且花费时间较多。
技术实现思路
针对现有技术存在的不足,本专利技术提出一种基于游戏引擎和倾斜摄影数据的三维实景模型生成方法,以解决现有技术中存在的将倾斜摄影数据处理后导入到游戏引擎中建立三维实景模型时,数据格式转换流程冗杂且花费时间较多的技术问题。本专利技术采用的技术方案如下:第一方面,提供了一种基于游戏引擎和倾斜摄影数据的三维实景模型生成方法,包括以下步骤:对3MXB格式文件进行解析,分类识别地形信息、贴图信息;对层次细节进行多级拆分;获取不同级别层次细节的顶点信息,转化为三角面模型;获取不同级别层次细节的贴图信息,将贴图信息转化为材质;将三角面模型、材质按照不同层级导入游戏引擎,生成游戏引擎资源;使用游戏引擎生成三维实景模型。在一种可实现方式中,对3MXB格式文件进行解析的步骤具体如下:使用三维图形引擎读取3MXB格式文件的头部;调用三维图形引擎的动态链接库,读取3MXB格式文件的主体。上述技术方案的有益技术效果为:在游戏引擎内部加载OSG的动态链接库,实现在游戏引擎内部直接解析顶点和贴图信息,通过游戏引擎的模型组织架构来构建三维实景模型。可以减少数据格式的转换过程时间,提高建模效率。在一种可实现方式中,对层次细节进行多级拆分具体如下:使用三维图形引擎,按照总层级目录,根据层次细节对应的层级编号将层次细节进行多级拆分。在一种可实现方式中,三维图形引擎为OSG引擎。在一种可实现方式中,游戏引擎为UE4引擎。在一种可实现方式中,在对三维实景模型进行展示时,根据三维实景模型瓦片面积所占显示屏幕面积的比例加载层次细节。上述技术方案的有益技术效果为:不需要选定细显示节级别,将所有层次细节信息读入,通过距离判断逻辑在游戏引擎内进行相应显示。在进行三维实景模型的展示时,可以提高模型浏览的流畅度,减小GPU的计算负荷,加大硬件的承载能力。第二方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现第一方面提供的基于游戏引擎和倾斜摄影数据的三维实景模型生成方法。第三方面,提供了一种存储有计算机程序的计算机可读存储介质,计算机程序程序被处理器执行时实现第一方面提供的基于游戏引擎和倾斜摄影数据的三维实景模型生成方法。附图说明为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。图1为本专利技术实施例1的方法流程图;图2为本专利技术实施例1的三角面模型示意图。具体实施方式下面将结合附图对本专利技术技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,因此只作为示例,而不能以此来限制本专利技术的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本专利技术所属领域技术人员所理解的通常意义。实施例1本实施例提供的基于游戏引擎和倾斜摄影数据的三维实景模型生成方法流程如图1所示,按以下步骤进行:1、对3MXB格式文件进行解析,分类识别地形信息、贴图信息使用三维图形引擎负责解析工作,在本实施例中选用OSG引擎。但是OSG引擎本身并不能处理3MXB格式,为此要采用独特的解析算法来完成解析。3MXB格式是一种字节码格式,由头部和主体组成,记载了顶点、贴图、层级等信息。3MXB格式文件的解析算法如下:(1)读取3MXB格式文件的头部使用OSG引擎关联可以直接读取3MXB格式文件的头部,3MXB格式文件的头部为一分类目录,比如头部内容写的是“顶点”,主体中就对应着“顶点”的具体数据;头部内容写的是“贴图”,主体中就对应着“贴图”的数据。(2)调用动态链接库,读取3MXB格式文件的主体调用OSG引擎的动态链接库,读取3MXB格式文件的主体。3MXB格式文件的主体包括了顶点、贴图、层级等各资源之间的依赖关系,以及各节点间的层级关系。(3)分类识别地形信息、贴图信息在本实施例中,地形信息包括顶点、层级信息,体现了三角面模型的空间坐标信息。贴图信息是指后续要贴在三角面模型上的实景图片。2、对层次细节进行多级拆分按照总层级目录,根据LOD(层次细节)对应的层级编号将LOD进行多级拆分。总层级目录在前一步骤中通过读取3MXB格式文件的头部得到,在解析出来的总节点目录能反应出来哪些是精细的层级,哪些是粗略的层级,然后按照这个目录中各个子层级对应的层级编号,将LOD进行拆分,供后面模型显示的时候调用。在本实施例中,使用OSG引擎执行本步骤的操作。3、获取不同级别层次细节的顶点信息,转化为三角面模型;获取不同级别层次细节的贴图信息,将贴图信息转化为材质。在每个级别的LOD中,包含了多个顶点的空间坐标信息。这些顶点在空间中可以看成是一个一个独立的点,将相邻的2个点连接起来可以得到一条线段,在空间中多根线段可以组合形成多个不同的三角形,这些三角形组合在一起就形成了三角面模型,如图2所示。在每个级别的LOD中,包含了多个贴图信息,使用三维图形引擎将贴图信息转化为材质。材质是用来指定物体的表面特性,决定平面在着色时的特性,如颜色、光亮程度、自发光度及不透明度等。本实施例中,使用OSG引擎执行本步骤的操作。4、将三角面模型、材质按照不同层级依次导入游戏引擎,生成游戏引擎资源。生成的游戏引擎资源就是游戏引擎在后续建模时能够识别的数据格式。在本实施例中,游戏引擎选用UE4(虚幻引擎第四代),UE4是一种游戏引擎,是针对移动处理器开发的专用引擎,实现“所见即所得”的三维建模。如图1所示,在导入游戏引擎的过程中,把每一个层级所包含的三角面模型本文档来自技高网...

【技术保护点】
1.一种基于游戏引擎和倾斜摄影数据的三维实景模型生成方法,其特征在于,包括以下步骤:/n对3MXB格式文件进行解析,分类识别地形信息、贴图信息;/n对层次细节进行多级拆分;/n获取不同级别层次细节的顶点信息,转化为三角面模型;/n获取不同级别层次细节的贴图信息,将贴图信息转化为材质;/n将三角面模型、材质按照不同层级依次导入游戏引擎,生成游戏引擎资源;/n使用游戏引擎生成三维实景模型。/n

【技术特征摘要】
1.一种基于游戏引擎和倾斜摄影数据的三维实景模型生成方法,其特征在于,包括以下步骤:
对3MXB格式文件进行解析,分类识别地形信息、贴图信息;
对层次细节进行多级拆分;
获取不同级别层次细节的顶点信息,转化为三角面模型;
获取不同级别层次细节的贴图信息,将贴图信息转化为材质;
将三角面模型、材质按照不同层级依次导入游戏引擎,生成游戏引擎资源;
使用游戏引擎生成三维实景模型。


2.根据权利要求1所述的基于游戏引擎和倾斜摄影数据的三维实景模型生成方法,其特征在于,对3MXB格式文件进行解析的步骤具体如下:
使用三维图形引擎读取3MXB格式文件的头部;
调用三维图形引擎的动态链接库,读取3MXB格式文件的主体。


3.根据权利要求1所述的基于游戏引擎和倾斜摄影数据的三维实景模型生成方法,其特征在于,对层次细节进行多级拆分具体如下:
使用三维图形引擎,按照总层级目录,根据层次细节对应的层级编号将层次细节进行多级拆分。

【专利技术属性】
技术研发人员:漆亮汪昭宇陈云勇胡晓红林永胜曾令君李凯李柯岑祝建平
申请(专利权)人:招商局重庆交通科研设计院有限公司
类型:发明
国别省市:重庆;50

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

1