预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN111415401A(43)申请公布日2020.07.14(21)申请号202010220382.4G06T17/00(2006.01)(22)申请日2020.03.25G06F9/50(2006.01)G06F16/2455(2019.01)(71)申请人上海城建信息科技有限公司G06F16/957(2019.01)地址200120上海市浦东新区中国(上海)G06F12/123(2016.01)自由贸易试验区张衡路200号2幢3层H04L29/08(2006.01)申请人上海隧道工程股份有限公司(72)发明人黄敏汪洋张志远杨磊沈国红林家祥段创峰胡海滨滕丽刘学(74)专利代理机构上海唯源专利代理有限公司31229代理人季辰玲(51)Int.Cl.G06T15/00(2011.01)G06T15/40(2011.01)权利要求书1页说明书5页附图2页(54)发明名称基于WebGL的大规模场景渲染方法(57)摘要本发明公开了一种基于WebGL的大规模场景渲染方法,包括:下载模型数据;使用IndexDB缓存模型数据;获取模型数据,首先根据特征id在IndexDB缓存中进行检索,若检索到存在特征id,则直接返回模型数据,若未检索到则从网络下载模型的模型数据;基于TreeGrid的空间划分算法,将模型数据划分入对应的空间节点中进行显示;基于HLOD的模型精度调度算法进行渲染;基于WebGL技术的遮蔽剔除算法,对不可见模型的模型数据进行剔除。本发明解决现有模型渲染应用的低效,以达到较好的用户体验,避免系统崩溃,或者产生崩溃假象的问题。CN111415401ACN111415401A权利要求书1/1页1.一种基于WebGL的大规模场景渲染方法,其特征在于,包括以下步骤:使用IndexDB缓存下载的模型数据,建立索引清单,所述模型数据具有模型唯一对应的特征id;进行模型渲染,获取需要渲染模型的模型数据,首先根据所述特征id在所述IndexDB缓存中进行检索,若检索到存在所述特征id,则直接返回对应的模型数据,若未检索到,则从网络下载所述模型的模型数据;基于TreeGrid的空间划分算法,将模型数据划分入对应的空间节点中,使用对应显示的空间节点进行显示;基于HLOD的模型精度调度算法,计算模型的距离,使用相应精度的模型数据对基于TreeGrid显示的模型数据进行渲染;基于WebGL技术的遮蔽剔除算法,对不可见模型部分的模型数据进行剔除;对经所述TreeGrid、HLOD及遮蔽剔除数据处理后的模型数据进行渲染。2.如权利要求1所述的基于WebGL的大规模场景渲染方法,其特征在于,还包括步骤:利用BatchDownload进行批量下载模型数据,制定打包协议,将需要渲染的多个模型数据进行打包压缩下载。3.如权利要求2所述的基于WebGL的大规模场景渲染方法,其特征在于,所述打包协议使用4个字节划分打包的模型数据,字节的值代表下一个模型数据的字节长度。4.如权利要求3所述的基于WebGL的大规模场景渲染方法,其特征在于,所述数据包采用GZIP压缩。5.如权利要求4所述的基于WebGL的大规模场景渲染方法,其特征在于,使用Worker技术的多线程处理进行所述数据包的拆解。6.如权利要求1所述的基于WebGL的大规模场景渲染方法,其特征在于,所述模型数据包括模型的所述特征id和对应的二进制数据,将所述特征id和所述二进制数据成对存储到所述IndexDB的索引清单中。7.如权利要求1所述的基于WebGL的大规模场景渲染方法,其特征在于,基于所述TreeGrid的数据处理包括:根据模型的三维空间位置,进行空间节点的创建与分配,以树形算法空间划分处理所述模型数据,在三维图形中以相机的位置与视角计算需要进行渲染的空间节点。8.如权利要求1所述的基于WebGL的大规模场景渲染方法,其特征在于,在基于HLOD的模型精度调度算法中,在所述TreeGrid中划分的空间节点上,以所述空间节点为单位计算距离,设置所述空间节点内使用的模型精度级别,使用精度级别较低的模型数据进行渲染。9.如权利要求1所述的基于WebGL的大规模场景渲染方法,其特征在于,还包括步骤:对所述TreeGrid、HLOG及遮蔽剔除数据处理中一段时间不使用的模型数据进行回收处理,释放内存。10.如权利要求9所述的基于WebGL的大规模场景渲染方法,其特征在于,在所述释放内存的步骤中,使用LRU算法,设置模型数据年龄,将所述TreeGrid、HLOG及遮蔽剔除数据处理中一段时间没有使用到的模型数据进行标记清除操作。2CN111415401A说明书1/5页基于WebGL的大规模场景渲染方法技术领域[0001]本发明涉及WebGL三维