一种基于半边折叠LOD模型构造方法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种基于半边折叠LOD模型构造方法

一种基于半边折叠的LOD模型构造方法   摘要摘要:实时渲染技术一直是图形学中的热点问题,大量模型数据给实时渲染带来了极大的挑战。作为一种有效的控制模型精度方法,LOD算法近年来得到了广泛重视,但已有算法在计算复杂度和保持外形特征等方面兼顾不周。针对此问题,提出了一种基于半边折叠的LOD模型构造方法,在空间距离计算、尖锐特征保持、光照效果等几方面进行了改进。实验结果表明,该算法能较好地保持模型的外形特征,实现起来快速有效。   关键词关键词:实时渲染;LOD;半边折叠   DOIDOI:10.11907/rjdk.1431086   中图分类号:TP317.4   文献标识码:A文章编号   文章编号2015)004014503   0引言   实时渲染技术一直是图形学领域研究的热点。当需要生成具有真实感的模型时,由于模型本身的复杂性,实时实现往往很难。   所谓LOD技术,就是针对每个物体建立多个简化模型,各个模型的简化率互不相同。根据物体在屏幕上所占   区域的大小及距离用户远近等视觉因素,为各物体选择不同的简化模型,从而减少实际显示所需的数据量。由于网格特征的复杂性与多样性,通常采用海量的三角网格对模型进行描述,因而LOD模型生成就转化为三角网格的简化问题,即把一个复杂三角网格表示的模型用一系列简化的模型表示,简化模型保持了原模型的基本特征,但顶点数目少于原网格的顶点数目。   三角网格简化的方法较多,主要有基于顶点删除的简化算法、重新划分网格的简化算法、小波分解的简化算法、边折叠的简化算法等等。近年来国内有很多关于网格简化的研究成果。其中文献[1]基于顶点聚类提出了新的网格简化算法,实现快速,但是简化结果误差较大,对于尖锐特征比较明显的模型,简化效果欠缺;文献[2]基于边折叠,设计了一种保持外形特征的网格简化算法,但是未能有效处理边界点和边界三角形。本文基于半边折叠提出了一种新的网格简化算法,并以此算法为基础设计了LOD模型的构造方法。   1基于半边折叠的网格简化算法   1.1算法关键问题   本文对传统的边折叠算法进行了改进,采用半边折叠。作为边折叠算法的特例,半边折叠的简化流程和边折叠是一致的,一次半边折叠移去一个顶点和两个面。不同之处在于,半边折叠不产生新的顶点,而是将待折叠的边uv折叠到其中的一个顶点v 上,顶点u 被顶点v 所代替(如图1),这样就减少了内存占用,且不必像文献[3]那样为了计算新顶点的位置而进行复杂计算,有利于渲染系统构建可以直接处理的数据结构,提高渲染效率。   (u→v)与(v→u)是两个不同的删除操作,需要分别计算半边折叠的代价,在简化队列中对半边折叠代价进行排序。本文算法的关键问题就在于如何确定半边折叠顺序,也就是顶点的先后删除顺序。   1.2算法核心内容   为了确定顶点的先后删除顺序,本文引入了顶点“价值”概念:计算每个顶点的“价值”,并放入网格简化队列中。在进行简化时,价值越低的点先出队并被删除,然后更新队列中受影响的顶点信息,再对队列重新排序。本文给出的顶点价值计算公式为:Cost(v)=αD(v)+βN(v)+γC(v),其中D(v)为空间距离值,N(v)为顶点法矢值,C(v)为顶点尖锐度,α,β,γ为用户设定参数。   空间距离值计算。Garland在1997年提出了二次误差测度(QEM)概念,以新顶点到被折叠边的两个顶点相关联平面的距离平方和作为误差测度,取得了较好的简化效果。近年来很多学者的研究都是基于Garland的算法进行改进;对QEM算法进行研究发现,QEM计算的是点到三角网格所在平面的垂直距离,而不是点到三角面的实际距离[4]。本文以顶点到三角面的实际距离之和作为误差的基本控制手段。下面给出点到三角面实际空间距离的计算过程:   (2)顶点法矢值计算。在实时渲染中往往会大量运用光照,而由三维显示原理可知, 在光照模型中,物体顶点和面的法向变化对视觉的影响很大。所以本文在顶点价值计算中加入了法矢值,本文设置的顶点法矢值N(v)计算公式为:   N(v)=与该顶点相关联的面的法向量之和[]与该顶点相关联的面的数量   (3)顶点尖锐度计算。很多简化算法在处理时往往忽略了模型的尖锐特征,为了保持模型重要的细节特征,本文引入特征边和顶点尖锐度概念。   特征边:预先设定阈值θ,对于某一边,若与该边相连的两个面的外法线夹角大于θ,则记该边为特征边。在有边界的模型中,边界边也视为特征边。   顶点尖锐度:对于每个顶点,定义其所关联的特征边数量为其尖锐度。   1.3数据结构设计   某些文献在构造LOD模型时,往往缺乏连续性,不能逆向恢复。本文因为采用了半边折叠算法,不会产生新的顶点,所以非常便于

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档