今天将着重強調什麼是uv?
所有的圖像文件都是二維的一個平面。水平方向是U,垂直方向是V,通過這個平面的,二維的UV坐标系。我們可以定位圖像上的任意一個像素。但是一個問題是如何把這個二維的平面貼到三維的NURBS表面和多邊形表面呢?
對于NURBUS表面。由于他本身具有UV參數,盡管這個UV值是用來定位表面上的點的參數,但由于它也是二維的,所以很容易通過換算把表面上的點和平面圖像上的象素對應起來。所以把圖像貼到NURBUS表面上是很直接的一件事。
但是對于多變形模型來講,貼圖就變成一件麻煩的事了。所以多邊形為了貼圖就額外引進了一個UV坐标,以便把多邊形的頂點和圖像文件上的像素對應起來,這樣才能在多邊形表面上定位紋理貼圖。所以說多邊形的頂點除了具有三維的空間坐标外。還具有二維的UV坐标。
對于紋理貼圖而言,一張貼圖的U和V坐标的數值範圍都是0到1,而不管他的實際分辨率是多少,MAYA會自動把UV紋理坐标換算成貼圖的象素坐标。
"UV"這裡是指u,v紋理貼圖坐标的簡稱(它和空間模型的X, Y, Z軸是類似的),它定義了圖片上每個點的位置的信息. 這些點與3D模型是相互聯系的, 以決定表面紋理貼圖的位置, UV就是将圖像上每一個點精确對應到模型物體的表面, 在點與點之間的間隙位置由軟件進行圖像光滑插值處理, 這就是所謂的UV貼圖。
那為什麼用UV坐标而不是标準的投影坐标呢? 通常給物體紋理貼圖最标準的方法就是以planar(平面),cylindrical(圓柱), spherical(球形),cubic(方盒)坐标方式投影貼圖。
Planar projection(平面投影方式)是将圖像沿x,y或z軸直接投影到物體. 這種方法使用于紙張, 布告, 書的封面等 , 也就是表面平整的物體.平面投影的缺點是如果表面不平整, 或者物體邊緣彎曲, 就會産生如圖A的不理想接縫和變形. 避免這種情況需要創建帶有alpha通道的圖像, 來掩蓋臨近的平面投影接縫, 而這會是非常煩瑣的工作。
所以不要對有較大厚度的物體和不平整的表面運用平面投影方式. 對于立方體可以在x, y方向分别進行平面投影, 但是要注意邊緣接縫的融合. 或者采用無縫連續的紋理, 并使用cubic投影方式。多數軟件有圖片自動縮放功能, 使圖像與表面吻合. 顯然, 如果你的圖像與表面形狀不同, 自動縮放就會改變圖像的比例以吻合表面。 這通常會産生不理想的效果, 所以制作貼圖前先測量你的物體尺寸。網上最多的說法就是切線(Tangent)與UV坐标的U方向對齊,副切線(Bitangent)與UV坐标的V方向對齊。這就很抽象,UV坐标變化本身就是一個二維空間的向量,而切線方向是一個三維空間的向量,這兩者是如何對齊的呢?
首先我們考慮一個三角形,要為這個三角形内的每一個像素都給定一個法線矢量 ,這個三角形是一個平面,有一個平面法矢量,我們可以修改這個矢量去定義每個像素的法矢量,例如每個像素上向某個軸偏移一個值,向另一個軸偏移一個值。這兩個軸最好都垂直于該平面法線 但問題是, 那另外兩個軸如何确定呢,這是一個常見的三維問題,給定一個軸,另外兩個軸有無限種可能,就像下圖一樣。
針對上述情況,比較簡單的一種方式就是利用紋理坐标來确定另外兩個軸的方向。
一個簡單的思考方式 :
我有一個向量,該向量指向(uv坐标的)U值在三角形上增加的方向,那麼它在模型空間坐标系中的坐标将是多少。
另一個思考方式:
模型空間X,Y,Z軸坐标相對于UV坐标的變化率。也就是說 切線(Tangent)向量實際上是模型空間坐标相對于U值分量的變化率,而副切線(Bitangent)向量則是模型空間坐标相對于V值分量的變化率。
上面兩句話其實已經将切線與UV坐标的關系描述的很清楚了,不知道小夥伴有沒有理解清楚?
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!