[发明专利]一种提升模型渲染效率的方法在审
申请号: | 202110826255.3 | 申请日: | 2021-07-21 |
公开(公告)号: | CN113421337A | 公开(公告)日: | 2021-09-21 |
发明(设计)人: | 宋江 | 申请(专利权)人: | 北京臻观数智科技有限公司 |
主分类号: | G06T17/05 | 分类号: | G06T17/05;G06T15/00;G06F16/29 |
代理公司: | 成都环泰专利代理事务所(特殊普通合伙) 51242 | 代理人: | 李斌;李辉 |
地址: | 100000 北京市朝阳区高碑店乡*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 提升 模型 渲染 效率 方法 | ||
本发明公开了一种提升模型渲染效率的方法,包括以下步骤:S1、从存储空间中读取gltf/gl b模型对象,提取mesh的数组对象meshes;S2、在存储介质中创建缓冲类型几何体的数组对象和mater ia l的数组对象,同时创建用于存储的存储数组结构;S3、循环meshes数组中的所有mesh对象,获取mesh的普通几何体对象和mater ia l对象,并获取普通几何体的属性信息;S4、通过处理器根据普通几何体属性信息的数组信息,获取特定的要素对应关系;S5、将普通几何体属性信息的数组信息追加到缓冲类型几何体的数组对象中,并开始循环;S6、将循环结束后的普通几何体属性信息的数组信息添加到缓冲类型几何体的数组对象中,创建新的mesh对象。本发明可以将单个模型的多个mesh合并成一个mesh对象,提升渲染的效率。
技术领域
本发明涉及GIS技术领域,具体来说,涉及一种提升模型渲染效率的方法。
背景技术
随着GIS技术的不断发展,基于GIS的三维场景应用越来越多,目前GIS三维数据主要来源有三种,矢量自动拉伸贴图、人工建模、以及无人机倾斜摄影采集生产。人工建模主要应用在室内外一体化的数据应用中,也是精细化、结构化模型数据最主要的制作方式。
然而对于人工建模的数据生产过程中,往往由于建模工具和建模人员的制图原因,会将模型拆分成不同的小块来建模,如建造一个汽车,往往车身外体是一个块,后视镜、轮胎、挡风玻璃等往往都是不同的块,然后将这些模型块组合成一起,合并导出成一个三维模型对象。往往一个块最少会产生一个或者多个mesh,但是这样会导致一个模型会产生来多的mesh对象,由于threejs在对象渲染的过程中是以mesh为单元渲染的,mesh调用的渲染次数越多,这样会导致三维场景中的渲染帧率大大降低,影响数据渲染的渲染效率,导致场景卡顿。如何能够将含有过多mesh的模型数据在threejs引擎中快速高性能的渲染,是目前web三维渲染面临的比较棘手的问题。对上述问题,目前转换方法,主要是将模型的gltf格式转换成glb的数据格式,但是这种格式不会改变模型的渲染性能问题,只是解决的web端数据转送问题,因为glb比gltf的文件小了好多,其主要采用二进制的存储方式存储;目前还没有一个较为妥善的方法在不影响数据质量的前提下来提高模型的渲染效率的算法。因此,亟需一种提升模型渲染效率的方法解决上述技术问题。
发明内容
为解决现有技术中存在的问题,本发明提供一种提升模型渲染效率的方法,可以将单个模型的多个mesh合并成一个mesh对象,从而提升模型在threejs引擎中渲染的效率。
为实现上述目的,本发明采用的技术方案是:一种提升模型渲染效率的方法,包括以下步骤:
S1、从存储空间中读取gltf/glb模型对象,提取mesh的数组对象meshes;
S2、在存储介质中创建缓冲类型几何体的数组对象和material的数组对象,同时创建用于存储的存储数组结构;
S3、循环meshes数组中的所有mesh对象,获取mesh的普通几何体对象和material对象,并获取普通几何体的属性信息;
S4、通过处理器根据普通几何体属性信息的数组信息,获取特定的要素对应关系;
S5、将普通几何体属性信息的数组信息追加到缓冲类型几何体的数组对象中,并开始循环;
S6、将循环结束后的普通几何体属性信息的数组信息添加到缓冲类型几何体的数组对象中,创建新的mesh对象。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京臻观数智科技有限公司,未经北京臻观数智科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110826255.3/2.html,转载请声明来源钻瓜专利网。