[发明专利]一种深度相同的Z消隐方法和装置有效
申请号: | 200910237759.0 | 申请日: | 2009-11-18 |
公开(公告)号: | CN102063733A | 公开(公告)日: | 2011-05-18 |
发明(设计)人: | 廖健;郑培枫;吕精华;沈季 | 申请(专利权)人: | 新奥特(北京)视频技术有限公司 |
主分类号: | G06T15/00 | 分类号: | G06T15/00 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 苏培华 |
地址: | 100080 北京市海淀区西草*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 深度 相同 方法 装置 | ||
技术领域
本发明涉及计算机图形学技术领域,特别是涉及一种深度相同的Z消隐方法和装置。
背景技术
三维图形的表示如图1所示,在空间任取一点O,过O作互相垂直的三直线x、y、z,称O为原点,则构成空间坐标系。右边是x轴正方向,上面是y轴正方向,垂直于屏幕指向屏幕外的方向为z轴正方向。
在计算机图形学中,深度缓冲是在三维图形中处理图像深度坐标的过程,这个过程通常在硬件中完成,但也可以在软件中完成。深度缓冲是可见性问题的一个解决方法,而可见性问题是确定渲染场景中哪部分可见、哪部分不可见的问题。
当三维图形卡渲染物体的时候,每一个所生成的像素的深度(即z坐标,也称z值)就保存在一个缓冲区中。这个缓冲区叫做z缓冲区或者深度缓冲区,这个缓冲区通常组织成一个保存每个屏幕像素深度的x-y二维数组。如果场景中的另外一个物体也在同一个像素生成渲染结果,那么图形处理卡就会比较二者的深度,并且保留距离观察者较近的物体。然后这个所保留的物体点深度保存到深度缓冲区中。最后,图形卡就可以根据深度缓冲区正确地生成通常的深度感知效果:较近的物体遮挡较远的物体。这个过程叫做z消隐。
在渲染过程中,z消隐是根据深度信息对像素的早期剔除。当渲染隐藏表面所需要的计算量很大的时候,这种方法可以提升处理性能。z消隐是深度缓冲的一个直接结果,在这种方法中每个待定像素的深度都要与相同位置的现存像素的深度进行比较。如果待定像素的深度(即z值)小于现存像素的深度,即现存像素距离观察者较近,则最终保留现存像素的深度值;相反,如果待定像素的深度大于现存像素的深度,即待定像素距离观察者较近,则最终用待定像素的深度替换现存像素的深度值,保存待定像素的深度值。由此可见,z消隐是按照空间顺序对同一像素位置的像素进行剔除,最后将深度缓冲区中保留的物体点渲染结果显示出来。
在所述z消隐过程中,还有一种特殊情况,即待定像素的深度和现存像素的深度相同。此时,处理方法是按照渲染的先后顺序,保留后渲染的物体点深度,因此最终显示出来的是后渲染的物体。
参照图2.1,是图像叠加显示的效果图。在显示区域中,包括两个图,一个是表示国旗的图片(简称国旗图),另一个是表示FIFA字样的图片(简称FIFA图),二者部分重叠。在重叠的像素位置,二者的深度相同(即z值相同),而且FIFA图先进行渲染,国旗图后进行渲染。按照上述z消隐过程,最终的显示效果是保留后渲染的国旗图,需要将FIFA图中与国旗图重叠的部分裁剪掉,显示效果如图2.1所示。
上述z消隐方法存在一个问题:
如果不改变FIFA图的z值,只对FIFA图进行旋转等操作,由于FIFA图重新进行了渲染,按照上述方法,这时旋转后的FIFA图会遮挡国旗图,显示效果如图2.2所示。这种互换位置的现象经常出现,如果对这两个图进行多次操作,就会出现多种叠加显示效果,从而改变了原始的叠加次序。
发明内容
本发明所要解决的技术问题是提供一种深度相同的Z消隐方法和装置,以解决现有技术经常出现互换位置的问题。
为了解决上述问题,本发明公开了一种深度相同的Z消隐方法,包括:
保持深度不变对图元进行操作;
如果该图元与另一图元在相同像素位置生成渲染结果,并且深度相同,则比较二者的建立时间;
保留建立时间较晚的图元的渲染结果。
其中,所述操作包括对图元进行旋转。
所述方法还包括:
显示旋转后的图元,并在所述相同像素位置显示所保留的图元的渲染结果。
其中,所述图元包括深度缓冲控制属性和深度排序属性,所述两个属性在建立图元时被置为FALSE;渲染图元时判断所述两个属性为FALSE,则关闭z缓冲,使深度值对渲染无效。
本发明还提供了一种深度相同的Z消隐装置,包括:
操作单元,用于保持深度不变对图元进行操作;
比较单元,用于当该图元与另一图元在相同像素位置生成渲染结果,并且深度相同时,比较二者的建立时间;
保存单元,用于保留建立时间较晚的图元的渲染结果。
其中,所述操作单元进行的操作包括对图元进行旋转。
所述装置还包括:
显示单元,用于显示旋转后的图元,并在所述相同像素位置显示所保留的图元的渲染结果。
其中,所述图元包括深度缓冲控制属性和深度排序属性,所述两个属性在建立图元时被置为FALSE;渲染图元时判断所述两个属性为FALSE,则关闭z缓冲,使深度值对渲染无效。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于新奥特(北京)视频技术有限公司,未经新奥特(北京)视频技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910237759.0/2.html,转载请声明来源钻瓜专利网。