一遏暴、貼圖的作用:
貼圖的作用是描述物體表面的材質(zhì)见咒,我們創(chuàng)作出的紋理與材質(zhì)在游戲引擎(虛擬世界)中與光交互。
二低匙、顏色貼圖
顏色貼圖有三種叫法:Base Color Map, Albedo Map碳锈, Diffuse Map顽冶,因為工作流不同,所以叫法不一樣售碳,而且本質(zhì)上也有區(qū)別
Diffuse map漫反射貼圖
光照模型在Lambertian(蘭伯特材質(zhì)球)著色器中會把顏色貼圖叫做Diffuse Map(也叫顏色貼圖)强重,通常在繪制這張Diffuse Map的時候會把物體的結(jié)構(gòu)陰影信息也繪制進去。在傳統(tǒng)工作流中贸人,Diffuse Map是帶著光影信息的间景。
Albedo反射率貼圖
主要體現(xiàn)模型的紋理和顏色。老版本Unity的Shader(著色器)中灸姊,把顏色貼圖叫做Albedo拱燃。
Base Color map固有色貼圖
Base Color是把顏色貼圖剔除光影變化后,我們看到的最基礎的顏色力惯。在PBR工作流中顏色貼圖叫做Base Color這個術語(基本上不包含光影信息)碗誉。
三召嘶、法線貼圖
Normal法線貼圖:
1、凹凸貼圖:法線貼圖是?凹凸貼圖?的一種哮缺。凹凸貼圖是一種特殊的紋理弄跌,允許為模型添加表面細節(jié),例如凸起尝苇、凹槽和劃痕铛只,這些細節(jié)將捕獲光線,就像真實的幾何體一樣糠溜。如果在游戲引擎里用模型來表現(xiàn)凹凸細節(jié)淳玩,將需要繪制非常多數(shù)量的多邊形,以現(xiàn)在的電腦耗不起非竿,好點的電腦也就支持幾千萬面而已)蜕着。如果使用一張凹凸貼圖來呈現(xiàn)細節(jié),表面的幾何形狀可以變得更加簡單红柱,為了避免這種情況承匣,就需要使用法線貼圖來表示清晰的表面細節(jié)。用細節(jié)紋理調(diào)制光從表面反射的方式锤悄,以現(xiàn)代圖形硬件可以非橙推快地執(zhí)行這個個過程。
在現(xiàn)代游戲開發(fā)流程中零聚,設計師將使用 3D 建模軟件袍暴,基于非常高分辨率的原始模型生成法線貼圖。然后握牧,將法線貼圖映射到較低分辨率的模型(游戲中實際使用的模型)上容诬,這樣娩梨,通過法線貼圖沿腰,原始的高分率細節(jié)就被渲染了。
注意:凹凸貼圖是一種相對古老的圖形技術狈定,但仍然是創(chuàng)建細節(jié)逼真的實時圖形所需的核心方法之一颂龙。凹凸貼圖通常也被稱為?法線題圖?或?高度圖,不過這些術語的含義略有不同(看相關貼圖解釋)纽什。
2措嵌、表面法線:為了真正理解法線貼圖的工作原理,需要先清楚什么是?法線芦缰,以及如何在實時光照中使用法線企巢。例如一個模型的多邊形表面根據(jù)表面相對于光線的角度簡單地被點亮。表面角度可以表示為一條垂直于表面并向上突出的線让蕾,是一個向量浪规,這條線成為?表面法線或听,或者簡單地稱為?法線。
3笋婿、法線貼圖:用法線貼圖表示表面法線的這種變化誉裆。法線貼圖通過通過一張紋理來存儲如何改變表面法線的信息。法線貼圖是一張映射到模型表面的圖像紋理缸濒。有些類似于常規(guī)的顏色紋理足丢,不同的是,法線貼圖中每個頂點(稱為紋素)還表示了在表面法線方向上離開平面(或平滑)多邊形真實表面的距離庇配。
4斩跌、Opengl與Directx的區(qū)別:
法線貼圖還與Opengl與Directx這兩個圖形庫有關。OpenGL和DirectX都是用于渲染2D和3D信息的應用程序編程接口(API)捞慌。他們還定義了法線貼圖格式滔驶,其中,
Uniti游戲引擎使用的是Opengl程序接口卿闹。Unity使用的法線貼圖揭糕,凸起的結(jié)構(gòu),在法線貼圖上表現(xiàn)就是凸起的锻霎,凹的就是凹的著角。
UE4游戲引擎使用Directx程序接口。UE4使用的法線貼圖跟Unity的相反旋恼。凸起的結(jié)構(gòu)吏口,在法線貼圖上表現(xiàn)就是凹的,凹的結(jié)構(gòu)表現(xiàn)為凸起的冰更。他們的區(qū)別在于产徊,反轉(zhuǎn)法線貼圖藍色通道。
OpenGL是個專業(yè)的3D程序接口蜀细,是一個功能強大舟铜,調(diào)用方便的底層3D圖形庫,可跨平臺使用奠衔。OpenGL的前身是SGI公司為其圖形工作站開發(fā)的IRIS GL谆刨。IRIS GL是一個工業(yè)標準的3D圖形軟件接口,功能雖然強大但是移植性不好归斤,于是SGI公司便在IRIS GL的基礎上開發(fā)了OpenGL痊夭。OpenGL的英文全稱是“Open Graphics Library”,顧名思義脏里,OpenGL便是“開放的圖形程序接口”她我。雖然DirectX在家用市場全面領先,但在專業(yè)高端繪圖領域,OpenGL是不能被取代的主角番舆。
DirectX是一種應用程序接口(API)根吁,它是由微軟公司開發(fā)的用途廣泛的API,它可讓以windows為平臺的游戲或多媒體程序獲得更高的執(zhí)行效率合蔽,加強3d圖形和聲音效果击敌,并提供設計 人員一個共同的硬件驅(qū)動標準,讓游戲開發(fā)者不必為每一品牌的硬件來寫不同的驅(qū)動程序拴事,也降低用戶安裝及設置硬件的復雜度沃斤。
World?Space?Normals世界空間法線貼圖
表示物體的前、后刃宵、左衡瓶、右、上牲证、下方位哮针。
Position位置貼圖
表示的是從下到上的整體漸變梯度關系。
四坦袍、材質(zhì)屬性貼圖
Glossiness map光澤度貼圖:
Glossiness縮寫Gloss:Glossiness定義材質(zhì)得粗糙度信息十厢,跟Roughness相反,0(黑色-0 sRGB)表示粗糙捂齐,1(白-255 sRGB)表示光滑蛮放。(如下圖)。光澤度無非是指表面反射光線的能力奠宜。 表面能夠反射的光線越多包颁,光澤度越高。 表面能夠反射的光線越少压真,光澤度越低娩嚼。 表面反射光線的能力受環(huán)境中各種因素的影響,例如落在對象上的那些非常小顆粒的灰塵滴肿,以及接觸對象時從手上沾染到對象上的油污岳悟, 所有這一切都會影響表面反射光線的能力。
Metallic金屬度貼圖(Marmoset Toolbag中叫Metalness map)
金屬性貼圖起到類似于蒙版的作用嘴高,區(qū)分固有色貼圖中的金屬和絕緣體數(shù)據(jù)竿音。在金屬性貼圖中,0(黑色-0 sRGB)表示絕緣體拴驮,而1(白-255 sRGB)表示金屬。絕緣體F0值不需要手動輸入柴信,由shader自動處理套啤。當shader在金屬性貼圖中識別到黑色時,它將固有色貼圖中的相應區(qū)域處理為絕緣體。
金屬感對象的光澤度由粗糙度控制潜沦。 材質(zhì)越粗糙萄涯,其光澤度就會越低, 而缺少粗糙度將使金屬顯得非常有光澤唆鸡。 以下是粗糙度如何影響金屬感的示例涝影。
最左側(cè)球體的“金屬感(Metallic)”值為1,“粗糙度(Roughness)”值為0争占,因此它顯得非常有光澤燃逻。 但是,最右側(cè)球體的“金屬感(Metallic)”值為1臂痕,“粗糙度(Roughness)”值為1伯襟。 這使金屬看起來非常晦暗握童,就像已經(jīng)用過很久一樣姆怪。
Roughness粗糙度貼圖
Roughness定義材質(zhì)得粗糙度信息,0(黑色-0 sRGB)表示光滑澡绩,1(白-255 sRGB)表示粗糙稽揭。粗糙度在幫助確定表面光澤度方面扮演著重要角色。 表面越粗糙肥卡,其光澤度越低淀衣。 表面越光滑,其光澤度越高召调。 以下是粗糙度如何影響光澤度的示例膨桥。
Roughness粗糙度貼圖 與Glossiness map光澤度貼圖是相反的。Roughness 反向就變成Glossiness map 唠叛。
Specular高光貼圖
Specular表示高光得范圍只嚣、強度、顏色艺沼,在Specular工作流中册舞,顏色越亮高光越強,黑色表示沒有高光障般。
高光度也可影響材質(zhì)的光澤度调鲸。 將“高光度(Specular)”值調(diào)整到接近1時,將使材質(zhì)的反射和反射高光顯得特別強特別顯眼挽荡, 而將該值減小到接近0會弱化反射及反射高光藐石,直到它們幾乎不存在為止。 以下示例說明當“高光度(Specular)”值從0更改為1時定拟,對反射及反射高光強度的影響于微。
高光度(Specular)也深受粗糙度影響。 即使“高光度(Specular)”輸入設置為1,通過將“粗糙度(Roughness)”的值設置為1株依,也可以取消高光度效果驱证。 另外,如果啟用了金屬感恋腕,那么調(diào)整高光度不會影響材質(zhì)抹锄。
五、關于結(jié)構(gòu)體積的貼圖
Ambient?Occlusion環(huán)境吸收貼圖?簡稱AO貼圖
模擬物體之間所產(chǎn)生的陰影荠藤,在不打光的時候增加體積感伙单。也就是完全不考慮光線,單純基于物體與其他物體越接近的區(qū)域商源,受到反射光線的照明越弱這一現(xiàn)象來模擬現(xiàn)實照明(的一部分)效果车份。
Height Map高度圖也叫置換貼圖
高度圖(也稱為視差貼圖或凹凸貼圖?)是一個類似于法線貼圖的概念,但是技術更復雜 — 因此更性能開銷更大牡彻。高度圖通常與法線貼圖結(jié)合使用扫沼,負責定義和渲染表面額外的大型凸起。
雖然法線貼圖改變了紋理表面的光照庄吼,但是視差高度圖更進一步缎除,它會移動表面紋理的可見區(qū)域,從而實現(xiàn)表面遮擋效果总寻。這意味著器罐,明顯的凸起將具有放大的正面(面向相機)和縮小的反面(背向相機),并且反面會被遮擋住渐行。
雖然可以產(chǎn)生非常逼真的 3D 幾何效果轰坊,但是僅限于物體網(wǎng)格的平面多邊形表面。這意味著祟印,表面凸起將會突出現(xiàn)實并且彼此遮擋肴沫,但是并不會改變模型的『輪廓』,因為最終效果是繪制在模型表面蕴忆,并不會實際的幾何形狀颤芬。
一張高度圖應該是一張灰階圖,白色區(qū)域表示紋理的高區(qū)域套鹅,黑色區(qū)域代表低區(qū)域站蝠。看下圖右半部分卓鹿。
Curvature曲率貼圖
作用:曲率貼圖允許提取和存儲凹凸信息菱魔。黑色的值代表了凹區(qū)域,白色的值代表了凸區(qū)域减牺,灰度值代表中性/平 地豌习。
Thickness厚度貼圖
作用:黑色代表薄的地方存谎、白色代表厚的地方拔疚。它可以用于輔助制作表面散射(SSS肥隆,簡稱3S材質(zhì))材質(zhì),或直接擴散/反照率假裝SSS的效果稚失。?從冰面栋艳,蠟燭以及皮膚上觀察到這種效果,表面看起來有一種半透明的深度感句各。
六吸占、其他貼圖
ID貼圖
用于選擇不同的區(qū)域,進行分別繪制凿宾。相當于Mask遮罩矾屯。
Emissive自發(fā)光貼圖:
自發(fā)光貼圖控制表面發(fā)射光的顏色和亮度。當場景中使用了自發(fā)光材質(zhì)時初厚,它看起來像一個可見光件蚕。物體將呈現(xiàn)『自發(fā)光』效果。
自發(fā)光材質(zhì)通常用于某些部位應該從內(nèi)部照亮的物體上产禾,例如監(jiān)視器屏幕排作、高速制動的汽車盤式制動器、控制面板上的發(fā)光按鈕亚情,或黑暗中仍然可見的怪物眼睛妄痪。
簡單的自發(fā)光材質(zhì)可以通過一個顏色和亮度來定義。
Opacity透明貼圖
定義貼圖的不透明度楞件。黑色是透明的部分衫生,白色為不透明的部分,灰色為半透明的部分土浸。
Lightmap光照貼圖
Lightmap是用于靜態(tài)模型上的間接光照罪针。將場景的光照結(jié)果烘培到模型貼圖上,從而實現(xiàn)模擬(假冒)現(xiàn)實光照效果栅迄,可以節(jié)省硬件資源站故。在游戲引擎里做場景地圖的時候會用到。