计算机图形学-第九章讲义.ppt

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 知道了可见面判别算法分类后,我们进一步讲解一些常用的可见面判别算法 主要介绍5类算法 * 是物空间算法 先简单简述平面方程,再说明该算法的判别方法 * 是物空间算法 先简单简述平面方程,再说明该算法的判别方法 * 左手坐标系统 V.N=|V||N|cosθ, if 0θ90, then 则该不面可见 (此内容可板书) 可画示意图,PP432,图9.2 * * 通过检查C,可迅速判别出所有的后向面 凸多面体:因为面要么完全可见,要么完全不可见,所以,该方法能判别出所有隐藏面 凹多面体:有遮挡,主要是部分遮挡,还需要其他方法检查部分遮挡 画P432 图9.3 * 像空间算法 该算法对场景中的各个对象表面单独进行处理,且在表面上逐点进行 常用于只包含多边形面的场景,能很快计算出深度值且算法易于实现 通常沿着观察系统的z-轴来计算各对象距观察平面的深度,也称z缓存算法 * 深度缓存算法相当直观,图中的s1, s2, s3的深度关系能准确地说明该算法 * 算法也相当直观,只需要寻找最小的z值即可 该算法需要z缓冲器, Z缓冲器中的单元与帧缓冲器中的单元一一对应 * * 深度缓存的位数是衡量深度缓存精度的参数。深度缓存位数越高,则精确度越高,目前的显卡一般都可支持16位的Z Buffer,一些高级的显卡已经可以支持32位的Z Buffer,但一般用24位Z Buffer就已经足够了。 * * * * 该算法有时可能出现重复计算某点颜色值的情况 高档计算机图形系统一般集成了深度缓存算法的硬件实现 * 可见面检测方法的效率依赖于具体应用的特点。 如果场景中的表面沿视线的分布较广,从而在深度上重叠较少,则深度排序或BSP树方法的效率一般较高,在投影面上的投影有较少投影时,扫描线或区域细分方法是较快定位可见面的方法 第九章 可见面判别算法 本章重点讲述内容: 后向面消除法 深度缓存算法 可见面判别:判别从某一选定观察位置所能看到的场景中的内容 消隐:在绘制时隐藏实际不可见的线和面 消隐的考虑: 三维物体的真实图形 选择不同的消隐算法 第九章 可见面判别算法 可见面判别算法,按实现空间分类 物空间算法 像空间像法 第九章 可见面判别算法 可见面判别算法 物空间算法 在对象定义时所处的坐标系中实现。 这种方法把物体和物体的某些部分彼此比较,通过有关几何运算,以确定哪些线或表面是不可见的。然后仅显示可见线,以此实现消隐 算法精度较高,生成的图形可以放大多倍而仍然令人满意,适用于精密的工程应用领域 像空间算法 在显示图形的屏幕坐标系中实现 对投影平面或显示屏幕上的每一个像素位置逐点地检测其可见性。 算法比较粗糙.而且按图像空间算法得到的画面在放大后往往不能令人满意。 算法计算效率比较高,因为在光栅扫描过程中可以充分利用画面的连贯性等性质 可见面判别算法 两类方法一般都利用排序和连贯性来提高算法性能 排序主要用在深度比较 连贯性利用图形的规则性 可见面判别算法 提高可见面判别算法效率的常用方法 扫描线连贯性:一条扫描线可能包含相同强度的像素区段,并且相邻扫描线之间的图案变化很小 区域连贯性:动画中的各帧之间仅在运动对象的相邻区域内有差异,并且通常可以建立起场景中的对象与场景表面之间的稳定关系 利用连贯性:充分利用场景的规则性特征 提高可见面判别算法效率的常用方法 将场景中的对象表面根据它们与观察平面的距离进行排序,可以加速深度比较 利用排序提高效率 13.1 可见面判别算法的分类 可见面判别算法 后向面消除法 深度缓存算法 后向面判别 平面方程: Ax + By + Cz + D = 0 点(x, y, z)与平面的位置关系 Ax + By + Cz + D = 0 (x, y, z)在平面上 Ax + By + Cz + D 0 (x, y, z)在平面后方 Ax + By + Cz + D 0 (x, y, z)在平面前方 后向面判别 后向面判别思想 设点(x, y, z)满足Ax + By + Cz + D 0 如果该点位于视线到该多边形平面的直线上,则我们正在看该多边形的后向面 简单测试方法一 多边形面法向量N(A, B, C),视线向量V,在世界坐标系中,若V·N 0, 则为后向面 后向面判别 可通过视角?判别 V·N=|V||N|cosθ, if 0θ90, then 面不可见 简单测试方法二 若将对象描述转换至投影坐标系后,观察方向平行于观察坐标系中zv轴,则仅需要考虑法向量N(A,B,C)的z分量 后向面判别 右手观察坐标系 若C? 0,则为后向面 后向面判别 总结 对于一个对象的所有表面,通过检查C,可迅速判别出所有的后向面 凸多面体:面要么完全可见,要么完全

文档评论(0)

wuyoujun92 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档