本篇是復(fù)習(xí)篇,將光照部分的關(guān)鍵概念做一個(gè)整理
祝賀你能堅(jiān)持到這里,如果你能從第一篇文章開始看到這一篇,那么我要鄭重的說一句:同志,你辛苦了,不僅是學(xué)習(xí)OpenGL的不易,還有就是忍受筆者粗糙的表述。同時(shí),感謝你一直以來的關(guān)注,你的關(guān)注對(duì)我而言就是最大的鼓勵(lì)。
言歸正傳,進(jìn)入光照章節(jié)后我們并沒有將什么關(guān)于OpenGL的知識(shí),唯一的一點(diǎn)新內(nèi)容也是怎么設(shè)置uniform數(shù)組元素(汗~)。所有的章節(jié)都是圍繞如何使用著色器來獲得逼真的光照效果,通過這些章節(jié),我們看到了著色器確實(shí)是一個(gè)非常強(qiáng)大的東西。你見證了用幾個(gè)3D向量和一些可配置的變量創(chuàng)造出驚人圖形效果的過程!
之前的幾章中,我們學(xué)習(xí)了顏色、馮氏光照模型(包括環(huán)境光、漫反射和鏡面高光),物體材質(zhì),光源屬性,漫反射和鏡面高光貼圖,不同的光源模型,以及如何將所有的這些東西融合到一個(gè)應(yīng)用中。嘗試不同的光照,材質(zhì)顏色和光源屬性,你會(huì)看到不一樣的場(chǎng)景。
摘要
- 顏色向量:通過紅、綠、藍(lán)三個(gè)分量表示自然界中的絕大多數(shù)顏色效果。物體的顏色本質(zhì)上是其反射不同顏色光多少的屬性。
- 馮氏著色模型:通過一個(gè)環(huán)境光、漫反射光和鏡面高光來模擬真實(shí)世界中的光照的方法。
- 環(huán)境光:場(chǎng)景中不管怎樣都會(huì)存在的一種微弱的光。
- 漫反射光:漫反射光會(huì)隨著片元靠近光源而變量。需要法線來計(jì)算角度值。
- 法向量:垂直于表面的一個(gè)單位向量
- 法向量矩陣:隨著模型變換而進(jìn)行變換的矩陣,用于保持與原頂點(diǎn)的垂直。
- 鏡面高光:類似于鏡面反射的效果,物體上有一圈非常亮,做鏡面反射的部分。
- 材質(zhì):物體反射環(huán)境光、漫反射光和鏡面高光的程度。
- 光源:帶有環(huán)境光、漫反射光和鏡面高光強(qiáng)度的一個(gè)結(jié)構(gòu)。
- 漫反射貼圖:一張紋理圖,用于設(shè)置每個(gè)片元的漫反射屬性。
- 鏡面高光貼圖:一張紋理圖,用于設(shè)置每個(gè)片元的鏡面高光屬性。
- 方向光:只有方向的光源。用于模擬類似陽光等從非常遠(yuǎn)的距離上過來的光。
- 點(diǎn)光源:類似點(diǎn)燈,有一個(gè)位置,光照強(qiáng)度會(huì)隨著距離增大而減小。
- 聚光燈:有位置有方向的一個(gè)光源,光照限制在一定的范圍內(nèi),并且強(qiáng)度會(huì)隨著距離的增大而減小,像是手電筒。
參考資料
www.learnopengl.com(非常好的網(wǎng)站,建議學(xué)習(xí))