材质贴图方法

文档序号:6497188阅读:658来源:国知局
专利名称:材质贴图方法
技术领域
本发明涉及电脑绘图软件,尤其是一种材质贴图(Texture Mapping)方法,该材质贴图方法依据像素点的材质座标与/或像素点在材质地图上的形状而加快材质过滤(Texture Filtering)速度与减少存储器存取次数。
在电脑生成3D影像的领域中,材质贴图为一种非常重要的关键技术。典型地,材质地图(Texture Map)为一颜色值的二维阵列,其中,个别的颜色值称为材质像素(Texel),且每一材质像素在材质地图中具有一唯一地址,其中,此地址可以包括列与行编号,分别称为u与v。
3D工具可以指定材质座标给任何原始物(Primitive)的任何顶点(Vertex)。当电脑绘图系统要描绘原始物时,材质座标被计算且相应的材质像素由存储器中被存取给原始物的每一像素(Pixel)。举例来说,3D工具可以将一木质材质贴到3D物件的表面来建立一具有木头纹理样式的物件。
典型地,指定给顶点的u与v材质座标介于0.0至1.0的范围之内。其中,浮点数材质座标表示材质像素中心不一定会是完整的材质像素地址。对于最近点取样技术(Nearest Point Sampling),像素值被设定为具有最接近整数地址的材质像素的颜色。此最近点取样技术为一种具有少量计算处理的材质过滤方法,然而,在显示模式时其所达到的成效,并不足以达到使用者所期望的绘图效果。
对于双线性材质过滤技术(Bilinear Texture Filtering),将最近取样点的上面、下面、左边与右边的材质像素值进行一加权平均计算而得到像素值。在双线性材质过滤技术中,可以改善景象的实际情况,但生成一像素颜色需要对于存储器进行四次的存取动作。类似地,三线性材质过滤技术(Trilinear Texture Filtering)可以比双线性材质过滤技术更为精确。然而,三线性材质过滤技术也需要更多数目的存储器存取次数。
图2A、2B与2C分别显示最近点取样技术、双线性过滤技术与三线性过滤技术的示意图。图2A为最近点取样技术的一例子,其显示具有多个材质像素的方块,其中PC(u,v)表示在材质地图上的像素中心且黑点表示材质像素中心。在最近点取样技术中,黑色虚线的材质像素b被取样来表示像素颜色。图2B显示双线性过滤技术,其中,四个相邻材质像素a,b,c与d被选定来计算材质像素的加权平均。
图2C为三线性过滤技术(也可以称为Mipmap材质过滤技术)的一例子。Mipmap为一序列的材质像素,其中每一个分别表示相同影像的越来越低的解析度。在Mipmap中每一维度的每一影像的尺寸为前一层(Level)的一半,举例来说,如果Mipmap第0层(Mipmap 0)的维度为256×256,则Mipmap第1层(Mipmap1)的维度为128×128,Mipmap第2层(Mipmap2)的维度为64×64,以此类推至1×1。在Mipmap中的每一材质像素为前一层Mipmap的2×2材质像素方块的组合。参考图2C,在Mipmap第1层的材质像素e具有一表示在Mipmap第0层中质像素值(a,b,c与d)的平均。
在三线性过滤技术中,双性过滤技术在两最近的Mipmaps上执行,然后依照细部层级(Level of Detail,LOD)在两值间线性地插入来决定一最终像素值。举例来说,在图第2C中的像素值等于0.25×(a×w1+b×w2+c×w3+d×w4)+0.7 5×(e×w5+f×w6+g×w7+h×w8)其中wn(w1,w2,w3,w4,w5,w6,w7与w8)表示每一材质像素的权值。
由上可知,当双线性材质过滤技术或是三线性材质过滤技术执行时分别需要四次或是八次的存储器存取。另外,材质快取存储器(Texture Cache)系开发来减少在3D绘图硬件设计中材质过滤所需的存储器频宽(Bandwidth)。对于双线性或三线性材质过滤技术,快取存储器必须具有四个或是八个输出端口(Port)来在一时钟周期中提供材质给一像素。遗憾地,快取存储器的面积随着I/O端口的数目而增加且变的不可接收。当期望的材质像素在一个时间周期的中无法得到时,则3D绘图硬件可以利用多次的材质过滤来达到相同的功效。然而,整体绘图系统的效能将会被牺牲。
本发明的上述目的,可藉由本发明所提供的一种材质贴图方法来达成。本发明系用以将复数个像素点进行材质贴图。依据本发明一实施例,首先,依据每一像素点的一材质座标,计算一唯一材质座标。接着,依据唯一材质座标进行一材质过滤程序,从而得到一材质过滤结果。最后,将材质过滤结果指定给每一像素点。
此外,依据本发明另一实施例,首先,将像素点进行分组,从而得到复数个像素群组。然后,对于每一像素群组,依据像素群组中每一像素点的材质座标,计算一唯一材质座标。并依据此唯一材质座标进行一材质过滤程序,从而得到一材质过滤结果。最后,将材质过滤结果指定给像素群组中的每一像素点。
依据本发明的一型态,材质过滤程序系依据一双线性过滤技术而执行。
依据本发明的另一型态,将像素点进行分组的方法系依据像素点在一材质地图上的形状而决定。
图4系显示依据本发明第一实施例的材质贴图方法的操作流程图,同时参考第3与4图,当材质被放大地贴至像素时,首先,如步骤S30,依据每一像素点1,2,3,4,5,6,7,8与9的材质座标,将这些材质座标平均计算一唯一材质座标。接着,如步骤S32,依据计算得到的唯一材质座标进行一材质过滤程序,从而得到一材质过滤结果。其中此材质过滤程序可以是依据双线性过滤技术而进行且材质过滤结果为一颜色值。举例来说,材质过滤结果可以等于a×w1+b×w2+d×w3+e×w4;其中wn(w1,w2,w3与w4)表示不同材质像素针对唯一材质座标的权值。
最后,如步骤S34,将材质过滤程序之后得到的材质过滤结果指定给像素点1,2,3,4,5,6,7,8与9。
在本发明第一实施例中,可以看出材质过滤程序后所得到的唯一的材质过滤结果被指派给多个像素点。在一些特殊的景象中,在最终影像中有可能会引起缺陷或是锯齿状的边缘,因此,减少一起进行处理的像素点,即对于像素点进行分组便可以消除此类缺陷或是锯齿状边缘的发生。
接下来,图5系显示依据本发明第二实施例的材质贴图方法的操作流程图,图6为依据本发明第二实方包例的材质贴图方法的一分组例子,其中,荧幕区域上的像素点0,1,2与3分别对映至材质区域上的一点。同时参考第5与6图,本发明第二实施例将进行说明。
首先,如步骤S50,将像素点0,1,2与3进行分组,从而得到多个像素群组。注意的是,当由一原始物的像素点被对映至材质像素中时,它的形状(Shape)可能会被歪曲。如果材质地图上像素点的形状的宽大于高时,最接近的垂直像素点对(Pair)被分成一组,相反地,最接近的水平像素点对被分成一组。换言之,将像素点进行分组的方法依据像素点在材质地图上的形状而决定。
在图6的例子中,在材质地图上像素点的形状系藉由计算dux,dvx,dux与dvy来决定。如果u座标差大于V座标差时,垂直像素点对被分成一组,相反地,最接近的水平像素点对被分成一组。在此例子中,像素点对(0,2)为一组且像素点对(1,3)为一组。
接着,对于每一像素群组,如步骤S52,依据像素群组中像素点的材质座标,计算一唯一材质座标。以像素点对(0,2)为例,即依据像素点0与2的材质座标,将这些材质座标平均计算而得到此唯一材质座标。
此后,如步骤S54,依据计算得到的唯一材质座标进行一材质过滤程序,从而得到一材质过滤结果。其中,此材质过滤程序可以依据双线性过滤技术而进行且材质过滤结果为一颜色值。
最后,如步骤S56,将材质过滤程序之后得到的材质过滤结果指定给像素群组中的像素点。以像素点对(0,2)为例,即指定给像素点0与2。而当每一像素群组处理完成时,便可完成整个程序。
图7为依据本发明第二实施例的材质贴图方法的另一分组例子,在图7的例子中,四个4象素点(2×2)被分为一个群组,且依据唯一材质座标(unew,vnew)来进行材质过滤程序。其中,此唯一材质座标(unew,vnew)系利用平均计算四个像素点的材质座标对((uo,vo),(u1,v1),(u2,v2)与(u3,v3))而生成。
此外,注意的是,本发明亦可应用于三线性材质过滤技术。在应用至三线性过滤技术的情况中,本发明的材质贴图方法在两最近的Mipmaps上执行,然后依照细部层级(LOD)值在两值间线性地插入来决定一最终像素值。
因此,藉由本发明所提供的材质贴图方法可以依据像素点的材质座标与/或像素点在材质地图上的形状,使得在进行材质贴图时,加快材质过滤(Texture Filtering)速度与减少存储器存取次数,进而使得电脑绘图系统的效能大幅度地改善且减少硬件上的花费。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明,任何熟悉此项技艺者,在不脱离本发明的精神和范围内,当可做些许更动与润饰,因此本发明的保护范围当视后附的申请专利范围所界定者为准。
权利要求
1.一种材质贴图方法,用以将复数像素点进行材质贴图,其特征是该方法包括下列步骤依据每一该等像素点的一材质座标,计算一唯一材质座标;依据该唯一材质座标进行一材质过滤程序,从而得到一材质过滤结果;以及将该材质过滤结果指定给该等像素点。
2.如权利要求1所述的材质贴图方法,其特征是该唯一材质座标系将每一该等像素点的该材质座标进行平均而得到。
3.如权利要求1所述的材质贴图方法,其特征是该材质过滤程序系依据一双线性过滤技术而进行。
4.如权利要求1所述的材质贴图方法,其特征是核材质过滤结果为一颜色值。
5.一种材质贴图方法,用以将复数像素点进行材质贴图,其特征是该方法包括下列步骤将该等像素点进行分组,从而得到复数像素群组;以及对于每一该等像素群组,依据该像素群组中每一该等像素点的一材质座标,计算一唯一材质座标;依据该唯一材质座标进行一材质过滤程序,从而得到一材质过滤结果;以及将该材质过滤结果指定给该像素群组中的该等像素点。
6.如权利要求5所述的材质贴图方法,其特征是该唯一材质座标系将该像素群组中每一该等像素点的该材质座标进行平均而得到。
7.如权利要求5所述的材质贴图方法,其特征是该材质过滤程序系依据一双线性过滤技术而进行。
8.如权利要求5所述的材质贴图方法,其特征是该材质过滤结果为一颜色值。
9.如权利要求5所述的材质贴图方法,其特征是将该等像素点进行分组的方法系依据该等像素点在一材质地图上的形状而决定。
全文摘要
一种材质贴图方法,用以将复数像素点进行材质贴图;首先,将像素点进行分组,从而得到复数个像素群组;然后,对于每一像素群组,依据像素群组中每一像素点的材质坐标,计算一唯一材质坐标;并依据此唯一材质坐标进行一材质过滤程序,从而得到一材质过滤结果;最后,将材质过滤结果指定给像素群组中的每一像素点。
文档编号G06T11/40GK1427374SQ0114461
公开日2003年7月2日 申请日期2001年12月19日 优先权日2001年12月19日
发明者张振强, 叶国炜 申请人:矽统科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1