- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
深度缓冲器法的消隐问题 0 消隐的投影图的表现 在现实世界中,如果观察到一个不透明的物体,我们只能看到物体表面朝我们所见的表面,而其他表面可能无法看到。在计算机生成立体图形时,物体的所有部分都将表现出来,不管是可见的还是不可见的。这样的图形所表示的物体形状是不清楚的,甚至是不确定的。如图1(a)所示的立方体,就可以有图(b)、(c)两种解释:其一是从立方体的左上方向下看得到(b);其二是从立方体的右下方向上看到到(c)。由此可见要得到一个确定的立体感强的投影图,就需要消除稳藏线和隐藏面,也就是在给定的投影图中,确定物体哪些边、面是可见的,哪些边、面是不可见的,并消除那些不可见的棱线和表面,这就是所谓的消隐问题。消隐问题是计算机图形学研究的重点课程之一。 1 消隐方法 1.1 法向量的方向 背面消除不是一个完整的隐面消除方法,但它是隐面消除算法中的关键部分。对于单个凸多边体背面消除即可以达到隐面消除的目的。假设给定视点位置,为了决定一个面相对于视点为可见还是不 如图3所示,在某一表面内取两个向量P(p1,p2,p3)和q(q1,q2,q3),它们向量积p×q是一个与该向量所确定的平面垂直的法向量n=p×q,n方向由右手法则定义。为了得到符合要求的p和q,对所考虑的表面按逆时针方向取出2、3、8号三个顶点,根据2、3、8号顶点坐标算出p和q的各分向量p1,p2,p3和q1,q2,q3,根据p和q,就可算出n。 视线向量v=(v1,v2,v3),由视点和2号坐标可求分向量v1,v2,v3。 法向量n和视线向量v之间夹角有如下关系: 根据该结果的正负号判定θ大小范围,数量积大于0,则θ90°,否则0≥90°。如前所述,090°时表示表面可见,否则为不可见。 对于一个单一的凸多面体而言,背面消除可以完全消除不可见的面,而对于一个多物体组成的复杂体,仅仅通过背面消除是不够的,还需要做进一步的测试。但是背面消除是一个关系 的步骤,简单地经过该过程就可以消去大约50%的隐藏面。 1.2 像素点位置的处理 深度缓冲器法是图象空间中一种常用的方法。它的基本思想是对于显示屏上的每一个像素点,测试一系列平面,记录下位于此像素投射线上最靠近观察点的平面的深度。除了深度外,还需要记录下用以显示此对象的亮度值。深度缓冲器算法采用两个数组,一个记录每一个像素点的深度值;一个记录此像素点所对应对象的亮度值,其过程为: (1)对于屏上每个像素点,置深度缓冲器Depth[x][y]为一较大值,置亮度缓冲器为背景值; (2)对于景中的每个多边形,找出多边形投影到屏上时位于其边界内的全部像素。对于这些像素计算出此多边形在(x,y)处的深度z;如果zDepth[x][y],此多边形相对于其它多边形在(x,y)处更靠近观察者,所以置Depth[x][y]=z,置亮度数组为该多边形的亮度值。如果zDepth[x][y],说明该多边形在此像素点处被其它多边形隐藏,所以不采取任何行动。 当对所有像素进行扫描后,深度缓冲器和亮度缓冲器分别包含了所有可见点及可见的亮度值。由于采用屏幕坐系进行计算,所以每个像素点(x,y)处的深度值可由如下方程直接计算。 z=?Ax?By?DC 这时,当扫描线沿X方向增加一个单位时,像素点(x+1,y)处的深度值为: z′=?A(x+1)?By?DC 同理,当y=y-1时,像素点(x,y-1)处的深度值为: z′=?Ax?B(y?1)?DC 深度缓冲器法量种比较简单的隐面消除法,应用在许多图象显示系统中。 1.3 深度优先表的建立 画家方法就是按照画家作画的过程形成一幅图象的方法。它是根据物体的远近程度的不同来完成隐面消除的。它也称为表优先级法,在物体空间预先计算物体各面可见性优先级,然后在图象空间产生消隐图。它是以深度优先级进行排序的,按照多边形离观察者的远近来建立一张深度优先级表,离观察者远的优先级低,近的优先级高。当深度优先级表确定以后,画面中任意两个图形元素在深度上均不重叠,从而解决消隐问题。表优先级算法的基本思想是建好深度优先级表后,只要从优先级低的多边形开始,依次把多边形颜色填入帧缓冲存储器中以形成多边形图形,直到优先级最高的多边形送入帧缓冲器后,整幅图就显示好了。如图4所示,物体按C、B、A次序进行显示。 在建立深度优先表时,对于比较简单的画面,可直接按画中各元素的最大或最小z值排序,如图5(a)所示的情形。但是,对于比较复杂的画面,若按最大或最小z值建立深度优先表,就容易出现错误的结果,如图5(b)所示。若按最大z值对图形元素A、B进行排序,则在深度优先表中,A应排在B的前面。按照这一顺序写入帧缓存器,B将部分地遮挡A。然而实际上A部分地遮挡B。为了得到正确的处理结果需要在深度优先表中交换A、B的位置。 建立深度优先表时,常常出现的
有哪些信誉好的足球投注网站
文档评论(0)