[发明专利]三维绘图方法及其装置无效
申请号: | 01109572.5 | 申请日: | 2001-04-17 |
公开(公告)号: | CN1381814A | 公开(公告)日: | 2002-11-27 |
发明(设计)人: | 廖明豪;叶国炜 | 申请(专利权)人: | 矽统科技股份有限公司 |
主分类号: | G06T17/00 | 分类号: | G06T17/00 |
代理公司: | 永新专利商标代理有限公司 | 代理人: | 徐娴 |
地址: | 中国*** | 国省代码: | 台湾;71 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 三维 绘图 方法 及其 装置 | ||
本发明涉及一种三维绘图方法及其装置,特别是一种具有可见度测试前置处理的快速三维绘图方法及其装置,其可减少像素处理运算程序及存储器频宽。
在三维绘图系统中,一场景中物件的像素数据会被产生以显示在一电脑屏幕、显示器或电视上。针对电脑屏幕显示来说,绘图系统中的每一物件是由一堆相连接的平面图形(通常是三角形或四角形)所组成,例如,每一要被显示的物件会被分割成多个三角形,并将每一个三角形的位置数据及显示参数储存起来以便算出在各该三角形中的每一像素数据,使像素能适时显示在屏幕上。
但是,在一个绘图场景中,通常会有多个三角形映射到显示平面的同一个区域而造成重叠,使得某些三角形的部分区域被遮蔽,以致在场景中根本看不见,这样一来,绘图系统先前对该等被遮蔽三角形中的像素所做的数据运算不但是白费的,而且耗用非常大的存储器及频宽。
为了解决上述问题,许多隐藏表面移除演算法被提出,以移除当物件映射至显示平面时,介于物件之间的重叠平面;而著名的演算法之一为z-暂存器演算法(z测试),其主要是对应一个显示平面的每一像素提供一个z-暂存器储存该像素的深度值,然后计算映射至该显示平面三角形,每一个像素的相关数据以及深度值,并与z-暂存器中相对位置像素的深度值比较,再将z-暂存器更新为较小的深度值,借以得知那一个三角形位于重叠区域的前面,并排除在重叠区域中被覆盖的三角形,因此,z-暂存器会不断被更新,以储存目前最小(也就是最靠近观视者)的深度值,最后再根据z-暂存器中的深度值将各像素相关数据显示在屏幕上。
但是z-暂存器演算法(z测试)必须先算好每一个三角形的像素数据及深度值,并且不管最终看得到或看不到,都必须将z-暂存器中的深度值取出与每一个要显示在画面上的这些三角形的每一像素做深度值比较测试,这在三维绘图系统中需要占用存储器相当大的频宽,导致其绘图效能明显降低,例如,对于一个工作频率为150MHz的四像素管线绘图系统而言,读取32比特的z-暂存器所需要的存储器频宽大于2Gbytes/sec。而为了改善z-暂存器演算法(z测试)所存在的上述问题,以减少测试像素可见度所需的存储器频宽,一个粗略-z(coarse-z)测试方法被提出。请参照图1,该方法是先将显示画面1分割成多个大小一致的区块(m,n),再分别对每一个区块(m,n)进行一粗略-z测试。图1中绘示两个映射在多个区块上的三角形91、92,这两个三角形91、92有部分重叠,且第一个三角形91位于重叠区域的前面。该粗略-z测试对应每一区块(m,n)提供一个粗略-z暂存器(m,n)储存每一个区块(m,n)中的最小z值,且其初始值设为1.0(即背景位置)。接着请参考图2,绘示粗略-z测试的过程及显示画面1中区块(7,4)中的状态。假设第一个三角形91在区块(7,4)中的最小及最大z值分别是0.2及0.4,为了测试第一个三角形91在区块(7,4)中的可见度,执行粗略-z测试并将粗略z暂存器(7,4)中的z值与第一个三角形91在区块(7,4)中的z值比较,因为第一个三角形91在区块(7,4)中是位于前面,也就是第一个三角形91在区块(7,4)中的最大z值小于粗略z暂存器(7,4)中的z值,所以粗略z暂存器(7,4)被更新为0.2,表示第一个三角形91在区块(7,4)中的像素是确定要显示的,则不须再做z-测试。接着假设第二个三角形92在区块(7,4)中的最小及最大z值为0.6及0.9,当第二个三角形92在区块(7,4)中的z值与粗略z暂存器(7,4)比较时,因为第二个三角形92在区块(7,4)中的z值大于粗略z暂存器(7,4)中的z值,表示第二个三角形92在区块(7,4)中为看不见状态,所以不用显示出来也不须做z-测试;因此只有比较结果为不确定的三角形才须进行z-测试。上述以区块(m,n)为测试单位的粗略-z测试,虽然可降低所需的存储器频宽,例如,若区块(m,n)的大小为32×32像素,显示画面为1024×768像素,则只需存取及比较768个粗略-z暂存器,以进行粗略-z测试,大大降低了可见度测试所需的存储器频宽;但是,若遇到比较结果一直都是看不见的情况,也就是当三角形是一直从后面往前面叠置显示时,较晚进来的三角形会一直覆盖较早进来的三角形,以致即使只看到最后一个三角形,但是在此过程中粗略-z测试却一样不断地对每一三角形做粗略-z测试,而仍旧存在有不当绘图的问题,并执行了相当多不需要的运算及增加存储器需求。
本发明的目的在于提供一种具有可见度测试前置处理的快速三维绘图方法及其装置,以达到确实降低存储器频宽及减少不必要运算程序。
为达到上述目的,本发明采取如下技术措施:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于矽统科技股份有限公司,未经矽统科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/01109572.5/2.html,转载请声明来源钻瓜专利网。