最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

法線貼圖的基本概念

2020-12-16 14:34 作者:次世代萌新自學基地  | 我要投稿


1.法線貼圖的定義

法線貼圖就是在原物體的凹凸表面的每個點上均作法線,通過RGB顏色通道來標記法線的方向,你可以把它理解成與原凹凸表面平行的另一個不同的表面,但實際上它又只是一個光滑的平面。對于視覺效果而言,它的效率比原有的凹凸表面更高,若在特定位置上應用光源,可以讓細節(jié)程度較低的表面生成高細節(jié)程度的精確光照方向和反射效果。


用來進行凹凸映射。

凹凸映射的目的是使用一張紋理來修改模型表面的法線,以便為模型提供更多的細節(jié)。這種方法不會真的改變模型的頂點位置,只是讓模型看起來好像是“凹凸不平”的,但可以從模型的輪廓處看出“破綻”。

有兩種主要的方法可以用來進行凹凸映射:一種方法是使用一張高度紋理(height map)來模擬表面位移(displacement),然后得到一個修改后的法線值,這種方法也被稱為高度映射(height mapping);另一種方法則是使用一張法線紋理(normal map)來直接存儲表面法線,這種方法又被稱為法線映射(normal mapping)。盡管我們常常將凹凸映射和法線映射當成是相同的技術,但要知道它們之間的不同。


3.種類

首先按照不同的坐標系得到了不同類型的法線貼圖。模型頂點的法線根據(jù)所處坐標系的不同,在成圖后表現(xiàn)也是不同的。


A、世界空間下的法線紋理world space normal map

一旦從貼圖里解壓出來后,就可以直接用了,效率很高.但是有個缺點,這個world space normal 是固定了,如果物體沒有保持原來的方向和位置,那原來生成的normal map就作廢了。

世界坐標下的頂點的法線是現(xiàn)成的,因此好用。不過如果進入模型在U3D里面進行了位置或者方向的轉換,那么在沒有轉換矩陣的情況下,法線信息就是錯誤的,也就無法使用了。進一步思考如果場景中存在大量的靜態(tài)模型,可以考慮用這個。


B、模型空間下的法線紋理object space normal map

對于模型頂點自帶的法線,它們是定義在模型空間中的,因此一種直接的想法就是將修改后的模型空間中的表面法線存儲在一張紋理中,這種紋理被稱為模型空間的法線紋理(object-space normal map)。

對象空間的法線貼圖,這個貼圖中記錄的法線信息是基于模型空間的,因此數(shù)值是相對的,這樣模型在場景中是可以位移和旋轉的,只要在計算的時候乘上對應的矩陣即可。而且從上面的圖里可以看到貼圖是彩色的,因為模型上的頂點法線在這個空間中是朝各個方向的。

對象空間的法線貼圖比起世界空間的在使用了已經有了很大的進步,不過它仍舊有自己的局限性,就是這樣的貼圖還是依賴于模型本身。從其定義也可以看出來,它也是一種“絕對位置”。如果模型發(fā)生了形變,則這個貼圖的信息就是錯誤的。從目前來看,我只能想到模型在場景中存在動畫這個問題。


C、切線空間下的法線紋理 tangent space normal map

對于模型的每一個頂點,它都有一個屬于自己的切線空間,這個切線空間的原點就是該頂點本身,而z軸是頂點的法線方向(n),x軸是頂點的切線方向(t),而y軸可由法線和切線叉積而得,也被稱為副切線(bitangent, b)或副法線。這種紋理被稱為是切線空間的法線紋理(tangent-space normal map)。

定義很好理解,從本質上講切線空間的法線貼圖解決了模型變形的問題。因為在另一個模型上的頂點的切線空間坐標系里面,法線貼圖中的信息是可以使用的,它不依賴于模型本身、也不依賴于模型所處的坐標系。



以MAYA為例,法線貼圖需要高模和低模配合,具體過程不說了,網上大把的視頻。

重點是法線貼圖的生成需要高模和低模,因為沒有高模就不知道法線方向,沒有低模,就不知道高模上某點的法線對應于低模上哪個點。

低模上的這個切線空間,也必須與高模上的坐標系切線空間。因為低模上的一個面,可能對應了高模上的幾個面(精度高),按照新方法每個面都有一個局部坐標系,那對于低模上的每個面,高模因為存在好幾個面,就會出現(xiàn)好幾個局部坐標系,這肯定是不行的。所以高模所用的切線空間,就是低模上的。生成法線貼圖,必定會確認高模上哪些面都對應低模上的哪個面,然后高模上的這幾個面的法線,都會轉換為低模這個面上所構建的切線空間的坐標。這樣,當?shù)湍W冃螘r,即三角面變化時,它的切線空間也會跟著變化,保存在貼圖里的法線乘以低模這個面的切線空間到外部坐標系的轉換矩陣即可得到外部坐標。順便再提一點,高模保存的這個法線,是高模上object space里的法線。


4如何將高模的法線貼圖用在低模上

對于模型空間法線,低模的模型空間坐標系與高模中的模型空間坐標系是重合的。所以不需要構建,所以低模上某點才能直接用高模的法線替換自己的法線。


如果需要下載軟件或其他相關教程可以點擊http://www.dcgart.cn/articles。


?

?


法線貼圖的基本概念的評論 (共 條)

分享到微博請遵守國家法律
鹿邑县| 滦平县| 大埔区| 东光县| 涿鹿县| 宜都市| 大同市| 长海县| 福泉市| 林甸县| 湟源县| 扎鲁特旗| 普定县| 临潭县| 芮城县| 寿阳县| 邓州市| 平原县| 封丘县| 潜江市| 渝北区| 高青县| 炎陵县| 三门峡市| 永川市| 凤山市| 洛扎县| 潜山县| 盐亭县| 永春县| 临安市| 松阳县| 西藏| 吴桥县| 屏边| 桑日县| 色达县| 丽江市| 凭祥市| 奉贤区| 军事|