纹素
纹素(英語:Texel,即texture element或texture pixel的合成字)是纹理元素的简称,它是计算机图形纹理空间中的基本单元[1]。如同图像是由像素排列而成,纹理是由纹素排列表示的。
纹素可以由图像范围来定义,其范围可以通过一些简单的方法来获取,比如阈值。沃罗诺伊分布可以用来描述纹素之间的空间关系。这就意味着我们可以通过将纹素与其周围的纹素图心的连线的垂直平分线将整个纹理分割成连续的多边形。结果就是每一个纹素图心都会有一个沃罗诺伊多边形将其圈起来。
在对三维表面铺设纹理的时候,通过纹理映射技术将纹素映射到恰当的输出图像像素上。在当今的计算机上,这个过程主要是由GPU完成的。
纹理工序起始于空间中的某一位置。这个位置可以是在世界坐标系中,但是一般情况下会设定在物体坐标系中。这样纹理会随着物体运动。然后通过投射的方式将其位置(坐标)从三维矢量值转化为0到1范围的二维矢量值(即UV映射。再将这个二维矢量值与纹理的分辨率相乘从而获得纹素的位置。当所需纹素的位置不是整数的时候,需要使用材質過濾进行处理。
夾緊和包裝
[编辑]「紋素」也可以通過通過簡單的過程(例如閾值)獲得的圖像區域來描述。沃羅諾伊鑲嵌可以用來定義其空間關係-部門被在由中點之間質心每一紋理像素的和用於整個紋理每周圍紋理像素的質心。這將導致每個texel質心周圍都有一個Voronoi多邊形,該多邊形由所有比其質心更近的texel質心組成。
当所需纹素位于纹理之外的时候,需要使用两种技术的组合。「包裝」(Clamping) 将纹素限制在纹理的尺寸,当超出纹理尺寸的时候将它移到最近的位置。「夾緊」(Wrapping)将纹素移回纹理。
當請求紋理外的紋理像素時,將使用以下兩種技術之一:夾緊或包裹。夾緊將紋理像素限制為紋理大小,如果紋理紋理大於紋理大小,則將其移動到最近的邊緣。包裹將以紋理的大小為單位移動紋理像素,以使其重新回到紋理中。包裝會導致紋理重複;夾緊使它只能處於一個位置。
参见
[编辑]参考文献
[编辑]- ^ Andrew Glassner, An Introduction to Ray Tracing, San Francisco: Morgan–Kaufmann, 1989