System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种面向WEB3D的顶点分层与增量式LOD方法及系统技术方案_技高网

一种面向WEB3D的顶点分层与增量式LOD方法及系统技术方案

技术编号:41204761 阅读:6 留言:0更新日期:2024-05-07 22:30
本发明专利技术公开了一种面向WEB3D的顶点分层与增量式LOD方法及系统,属于计算机图形学技术领域,其方法具体包括:统计模型文件中各三角面的边长分布,将三角形的边长进行等级划分,在某一个LOD等级条件下,从一个顶点开始遍历,查找第1个相邻点,判定边长D是否满足退化条件,循环遍历直至所有LOD等级条件下的点和边都遍历完成,得到每一个点的退化等级,按照各LOD等级对应的退化点,将顶点数据进行重新排列,并重构三角网索引表,将不同等级顶点数据存在独立的文件中,利用四叉树将不同等级顶点的文件组织成二进制文件,最后进行文件的加载和渲染,根据不同的细节,将顶点进行分层,避免了低细节等级模型的马赛克化。

【技术实现步骤摘要】

本专利技术属于计算机图形学,具体的说是一种面向web3d的顶点分层与增量式lod方法及系统。


技术介绍

1、lod的实现原理是通过动态地改变物体的细节程度来减少需要渲染的三角形数量,从而提高渲染性能。在相机距离物体较远时,使用较低的细节级别,减少三角形数量和渲染时间;当相机接近物体时,使用较高的细节级别,提高物体的细节和图形质量。这种动态调整的方式可以避免在不需要显示高细节的情况下浪费gpu性能。

2、目前三角网格的简化算法提供了一种如何控制过度复杂的三角网格的解决思路。过度复杂的网格不仅影响了相关应用的处理时间,大幅度增加了计算量,还对处理设备提出了额外的要求。同时,在网格的传输,存储等方面也提出了更高的要求。这些网格简化算法大多尝试着简化掉网格中尺寸较小的,或者其他不重要的部分来降低网格的复杂度。按照不同的简化方式可以分为以下几类:

3、公共区域合并、顶点聚类和网格元素删减,lod又可分为:静态lod,在预处理过程中产生一个物体的几个离散的不同细节层次模型。实时绘制时根据特定的标准选择合适的细节层次模型来表示物体;动态lod,在动态lod算法中生成一个数据结构,在实时绘制时可以从这个数据结构中抽取出所需的细节层次模型。从这个数据结构中可以得到大量不同分辨率的细节层次模型,分辨率甚至可以是连续变化的。

4、如授权公告号为cn103324783b的中国专利公开了一种基于边折叠的lod模型实时生成方法,包括如下步骤:根据视点位置和三维设备模型位置计算视点至三维设备模型的距离;按视点到三维设备模型的距离确定三维设备模型的简化程度;根据三维设备模型的简化程度按照基于顶点简化权重的实时简化操作对三维设备模型实时简化。该专利技术通过对三维设备模型的实时简化,可以实时地得到具有所需分辨率的近似三维设备模型,并保证分辨率变化的连续性;通过引入简化权重值,使三维设备模型的视觉信息得到较好的保留。

5、如授权公告号为cn107491481b的中国专利公开了一种lod模型搜索方法及系统、建立lod模型数据库的方法和计算机可读的存储介质。该专利技术的lod模型搜索方法包括步骤:输入待搜索模型;获取待搜索模型的顶点参数,所述顶点参数至少包括顶点坐标及顶点拓扑结构;对待搜索模型的顶点参数进行简化处理以获得待搜索模型的简化参数,待搜索模型简化处理后的简化参数的排序规则与数据库中模型的简化参数的排序规则一致;待搜索模型的简化参数与数据库中存储的模型的简化参数进行对比;及输出搜索结果。本专利技术的lod模型搜索方法及系统、建立lod模型数据库的方法和计算机可读的存储介质,其大大减少了需要处理的数据量,加快了计算机的运行速度,提高了搜索效率。


技术实现思路

1、针对现有技术的不足,本专利技术提出了一种面向web3d的顶点分层与增量式lod方法及系统,获取web3d模型文件,并统计web3d模型文件中各三角面的边长分布,将三角形的边长进行等级划分,设定退化条件,在任意一个lod等级条件下,从一个顶点开始遍历,查找第1个相邻点,判定边长是否满足退化条件,若满足,则将所述顶点标记为退化点,搜索位置移动到退化点的各相邻点,若边长不满足退化条件,则搜索起点停留在所述顶点,直至遍历所述lod等级条件下的所有点和边,重复s2,直至所有lod等级条件下的点和边都遍历完成,得到web3d模型文件中每一个点的退化等级,按照各lod等级对应的退化点,将顶点数据进行重新排列,并重构三角网索引表,将不同等级顶点数据存在独立的文件中,利用四叉树将不同等级顶点的文件组织成二进制文件,加载文件时,将组织的二进制文件读入缓冲区,随着模型的细化,产生原始三角形的一个重新排序序列,依次将下一个层次的三角形数据推送到缓冲区后面,在渲染过程中,查找lod级别的图元数量,并使用匹配的顶点着色器设置进行量化,从缓冲区中绘制相应数量的元素。

2、为实现上述目的,本专利技术提供如下技术方案:

3、一种面向web3d的顶点分层与增量式lod方法,包括以下具体步骤:

4、s1:获取web3d模型文件,并统计web3d模型文件中各三角面的边长分布,将三角形的边长进行等级划分,设定退化条件;

5、s2:在任意一个lod等级条件下,从一个顶点开始遍历,查找第1个相邻点,判定边长是否满足退化条件,若满足,则将所述顶点标记为退化点,搜索位置移动到退化点的各相邻点,若边长不满足退化条件,则搜索起点停留在所述顶点,直至遍历所述lod等级条件下的所有点和边;

6、s3:重复s2,直至所有lod等级条件下的点和边都遍历完成,得到web3d模型文件中每一个点的退化等级;

7、s4:按照各lod等级对应的退化点,将顶点数据进行重新排列,并重构三角网索引表;

8、s5:将不同等级顶点数据存在独立的文件中,利用四叉树将不同等级顶点的文件组织成二进制文件;

9、s6:加载文件时,将组织的二进制文件读入缓冲区,随着模型的细化,产生原始三角形的一个重新排序序列,依次将下一个层次的三角形数据推送到缓冲区后面;

10、s7:在渲染过程中,查找lod级别的图元数量,并使用匹配的顶点着色器设置进行量化,从缓冲区中绘制相应数量的元素。

11、具体的,所述s1中的退化条件为:lod等级和边长退化条件。

12、具体的,所述s2的具体方法为:

13、s201:设定三角形边长为d,lod等级集合为,,其中n表示lod等级为n级,在lod等级为n时,三角形边长d的退化条件为:,和为常数,且;

14、s202:在lod等级为j时,从一个顶点开始遍历,设置遍历约束条件,遍历约束条件具体公式为:

15、,

16、其中,ys表示遍历的约束条件,表示第k个节点,表示第k个节点相邻的第l个节点,表示第k个节点与相邻第l个节点的距离,,表示第k个节点与相邻的第l个节点为退化点,表示第k个节点与相邻的第l个节点不为退化点;

17、s203:重复步骤s202,直至遍历所述lod等级条件下的所有点和边。

18、具体的,所述s4的具体方法为:

19、s401:设定各lod等级对应的退化点集合为,,表示lod等级为n级时,对应的退化点集合;

20、s402:根据各lod等级对应的退化点集合,建立新的索引三角形数据链表和目录索引数据。

21、具体的,所述s5的具体方法为:

22、s501:利用投影的视锥裁剪方法,判断当前视点的可见三角形,计算当前视距,即观察者的视点到三角形目标节点的距离,计算公式为:

23、,

24、其中,l表示观察者的视点到三角形目标节点的距离,表示观察者视点的坐标位置,表示三角形目标节点的坐标位置,表示视距误差;

25、s502:判断可见的三角形是否在内存中,若可见的三角形不在内存中,将可见的三角形调入内存环境,若可见的三角形在内存中,对可见的本文档来自技高网...

【技术保护点】

1.一种面向WEB3D的顶点分层与增量式LOD方法,其特征在于,包括以下具体步骤:

2.如权利要求1所述的一种面向WEB3D的顶点分层与增量式LOD方法,其特征在于,所述S1中的退化条件为:LOD等级和边长退化条件。

3.如权利要求1所述的一种面向WEB3D的顶点分层与增量式LOD方法,其特征在于,所述S2的具体方法为:

4.如权利要求1所述的一种面向WEB3D的顶点分层与增量式LOD方法,其特征在于,所述S4的具体方法为:

5.如权利要求1所述的一种面向WEB3D的顶点分层与增量式LOD方法,其特征在于,所述S5的具体方法为:

6.如权利要求5所述的一种面向WEB3D的顶点分层与增量式LOD方法,其特征在于,所述四叉树根节点构建的包围球以四叉树根节点为球心,为半径构建的球,半径的计算方法为:,表示取最大值函数,表示四叉树根节点与子节点的边长。

7.一种面向WEB3D的顶点分层与增量式LOD系统,其基于权利要求1-6中任一项所述的一种面向WEB3D的顶点分层与增量式LOD方法实现,其特征在于,包括:模型等级划分模块、顶点遍历模块、退化等级生成模块、排序重构模块、二进制文件转化模块、二进制文件加载模块和渲染模块;

8.如权利要求7所述的一种面向WEB3D的顶点分层与增量式LOD系统,其特征在于,所述排序重构模块包括退化点排序单元和三角形重构单元;

9.如权利要求8所述的一种面向WEB3D的顶点分层与增量式LOD系统,其特征在于,所述二进制文件转化模块包括可视三角形单元和二进制文件转化单元;

10.一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-6中任一项所述的一种面向WEB3D的顶点分层与增量式LOD方法的步骤。

11.一种计算机可读存储介质,其特征在于,其上存储有计算机指令,当计算机指令运行时执行权利要求1-6中任一项所述的一种面向WEB3D的顶点分层与增量式LOD方法的步骤。

...

【技术特征摘要】

1.一种面向web3d的顶点分层与增量式lod方法,其特征在于,包括以下具体步骤:

2.如权利要求1所述的一种面向web3d的顶点分层与增量式lod方法,其特征在于,所述s1中的退化条件为:lod等级和边长退化条件。

3.如权利要求1所述的一种面向web3d的顶点分层与增量式lod方法,其特征在于,所述s2的具体方法为:

4.如权利要求1所述的一种面向web3d的顶点分层与增量式lod方法,其特征在于,所述s4的具体方法为:

5.如权利要求1所述的一种面向web3d的顶点分层与增量式lod方法,其特征在于,所述s5的具体方法为:

6.如权利要求5所述的一种面向web3d的顶点分层与增量式lod方法,其特征在于,所述四叉树根节点构建的包围球以四叉树根节点为球心,为半径构建的球,半径的计算方法为:,表示取最大值函数,表示四叉树根节点与子节点的边长。

7.一种面向web3d的顶点分层与增量式lod系统,其基于权利要求1-...

【专利技术属性】
技术研发人员:徐一岗袁方袁丁王世玉
申请(专利权)人:江苏狄诺尼信息技术有限责任公司
类型:发明
国别省市:

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

1