新计算机图形学基础及应用教程 教学课件 张怡芳 李继芳 第8章消隐.pptVIP

新计算机图形学基础及应用教程 教学课件 张怡芳 李继芳 第8章消隐.ppt

  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文档。上传文档
查看更多
第8章 可见面判断算法 计算机图形学基础 第8章 消隐 真实感图形绘制流程 基本概念 二.消隐涉及的算法: 排序 连贯性 是指所考察的物体或画面的性质在局部区域内保持不变的一种倾向。 例如: 棱边的连贯性是指:棱边的可见性在它与其他棱边相交时才发生变换; 面的连贯性是指:如果面的一部分是可见的,则一般情况下整个面都是可见的。 一般:选择z轴的负向为观察方向. 消隐算法分类 根据实现时所在的坐标系或空间: 1、图像空间算法(image space) ,在屏幕坐标系中实现,(一旦达到屏幕分辨率,就不再计算下去) 在投影屏幕上,以屏幕像素为采样单位,确定投影于每一像素的可见景物表面区域 将其颜色作为该像素的显示光亮度 侧重于向屏幕投影后形成的图像,实际中更常用。 计算量 = 屏幕像素点N * 物体个数n 2、物体空间算法 (也称景物空间、对象空间(object space)算法): 把n个对象中的每一个与其它(n-1)个对象比较,消去不可见的对象: 直接在视点坐标系中确定视点不可见的表面区域 将它们表达成同原表面一致的数据结构 侧重于景中各物体之间的几何关系 计算量=n(n-1) 背面剔除算法 背面剔除算法 8.1.2 提高消隐算法效率 利用连贯性 将透视投影转换成平行投影 包围盒技术:界定物体边界的矩形 提高消隐算法效率的常见方法1 利用连贯性 相邻物体的属性之间具有一定的连贯性;即从一个物体到相邻的物体,属性值通常是平缓过渡的,如颜色值、空间位置等; 具体包括: 物体连贯性 面的连贯性 区域连贯性 扫描线的连贯性 深度连贯性 连贯性 物体连贯性 若物体A与物体B是完全分离的,消隐时只需要比较两物体之间的遮挡关系即可,不需要对它们的表面多边形逐一进行测试; 面的连贯性 一张面内的各种属性值一般是缓慢变化的,可采用增量的形式对其进行计算; 区域连贯性 一个区域一般指屏幕上一组相邻的象素,他们通常为同一个可见面所占据,可见性相同; 扫描线的连贯性 在相邻两条扫描线上,可见面的分布情况相似; 深度连贯性 同一表面上的相邻部分深度是相近的,而占据屏幕上同一区域的不同表面的深度不同,这样只需取其上一点计算出深度值,比较该深度值便能得出结果; 提高消隐算法效率的常见方法2 将透视投影转换成平行投影 消隐必须在投影之前完成,因为消隐需要物体三维信息,投影后只有二维信息; 物体之间的遮挡关系与投影中心的选取有关; 在平行投影时,其遮挡关系可通过深度值来确定; 8.2.3 深度排序算法(画家算法) 由来:画家的作画顺序暗示出所画物体之间的相互遮挡关系 算法基本思路: 1)先将场景中的物体按其距观察点的远近进行排序,结果放在一张线性表中; (线性表构造: 距观察点远的称优先级低,放在表头;距观察点 近的称优先级高,放在表尾。该表称为深度优先级表) 2)然后按照从表头到表尾的顺序逐个绘制物体。 画家算法 关键:如何对场景中的物体按深度(远近)排序,建立深度优先级表? 一种针对多边形的排序算法如下: 假定在规范化投影坐标系uvn中,投影方向是n轴的负向,因而n坐标大距观察者近。记nmin(P) nmax(P)分别为多边形P的各个顶点n坐标的最小值和最大值,算法步骤如下: 画家算法步骤 Step 1: 将场景中所有多边形存入一个线性表(链表或数组),记为L; Step 2: 如果L中仅有一个多边形,算法结束;否则根据每个多边形的nmin对它们预排序。不妨假定多边形P落在表首,即nmin(P)为最小。再记Q为L – {P}(表中其余多边形)中任意一个; Step 3: 判别P, Q之间的关系,有如下二种: 画家算法步骤 step 3.1: 对有的Q,有nmax(P) nmin (Q), 则多边形的确距观察点最远,它不可能遮挡别的多边形。令L = L – {P}, 返回step 2; step 3.2: 存在某一个多边形Q,使nmax(P) nmin (Q),需进一步判别: step 3.2.1 若P,Q投影P’,Q’的包围盒不相交,则P,Q在表中的次序不重要,令L = L – {P}, 返回step 2;否则进行下一步。 step 3.2.2 若P的所有顶点位于Q所在平面的不可见的一侧,则P,Q关系正确,令L = L – {P}, 返回step 2;否则进行下一步。 step 3.2.3 若Q 的所有顶点位于P所在平面的可见的一侧,则P,Q关系正确,令L = L – {P}, 返回step 2;否则进行下一步。 ste

您可能关注的文档

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档