材質(zhì)和光照貼圖

材質(zhì)(materials)

在真實(shí)世界里,每個(gè)物體會(huì)對(duì)光產(chǎn)生不同的反應(yīng)。鋼看起來比陶瓷花瓶更閃閃發(fā)光,一個(gè)木頭箱子不會(huì)像鋼箱子一樣對(duì)光產(chǎn)生很強(qiáng)的反射。每個(gè)物體對(duì)鏡面高光也有不同的反應(yīng)。有些物體不會(huì)散射(Scatter)很多光卻會(huì)反射(Reflect)很多光,結(jié)果看起來就有一個(gè)較小的高光點(diǎn)(Highlight),有些物體散射了很多,它們就會(huì)產(chǎn)生一個(gè)半徑更大的高光。如果我們想要在OpenGL中模擬多種類型的物體,我們必須為每個(gè)物體分別定義材質(zhì)(Material)屬性。

馮氏光照模型的材質(zhì)屬性

ambient材質(zhì)向量定義了在環(huán)境光照下這個(gè)物體反射的是什么顏色;通常這是和物體顏色相同的顏色。

diffuse材質(zhì)向量定義了在漫反射光照下物體的顏色。漫反射顏色被設(shè)置為(和環(huán)境光照一樣)我們需要的物體顏色。

specular材質(zhì)向量設(shè)置的是物體受到的鏡面光照的影響的顏色(或者可能是反射一個(gè)物體特定的鏡面高光顏色)。最后,shininess影響鏡面高光的散射/半徑。

光照貼圖(lighting maps)

現(xiàn)實(shí)世界的物體通常不會(huì)只有一種材質(zhì),而是由多種材質(zhì)組成。

漫反射貼圖(Diffuse Map)

為了對(duì)每個(gè)原始像素獨(dú)立設(shè)置diffuse顏色,使用漫反射貼圖模擬一個(gè)物體的漫反射顏色。

鏡面貼圖(Specular Map)

使用鏡面貼圖模擬物體的鏡面高光的亮度??蓪⒙瓷滟N圖轉(zhuǎn)化為黑白圖樣并調(diào)節(jié)亮度和對(duì)比度來生成鏡面貼圖。

放射光貼圖(Emission Map)

即記錄每個(gè)片段發(fā)光值(Emission Value)大小的貼圖,發(fā)光值是(模擬)物體自身發(fā)光(Emit)時(shí)可能產(chǎn)生的顏色。這樣的話物體就可以忽略環(huán)境光自身發(fā)光。通常在你看到游戲里某個(gè)東西(比如機(jī)器人的眼,或是箱子上的小燈在發(fā)光時(shí),使用的就是放射光貼圖。


圖片和一些文字來源于https://learnopengl-cn.github.io,本人收集作為筆記,如有侵權(quán),望告知


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容