拓幻圖形學(xué)工程師教學(xué)手冊(cè)(第七講)|一字一字敲出OpenGL學(xué)習(xí)教程

本文繼續(xù)上一節(jié)
5.3 OpenGL內(nèi)置光照模型

創(chuàng)新互聯(lián)專注于企業(yè)營(yíng)銷型網(wǎng)站、網(wǎng)站重做改版、象州網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5開發(fā)、商城開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為象州等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

OpenGL光照分為三種,Ambient(環(huán)境光),Diffuse(漫射光)和Specular(鏡面反射光)。

Ambient 不依賴于光源的方向。光線在物體表面上向各個(gè)方向上均勻泛射,場(chǎng)景中的物體都會(huì)泛射光,這些泛射光又會(huì)照射到其他 物體上繼續(xù)被泛射,直到光子能量耗盡為止,這樣整個(gè)場(chǎng)景中散布著這樣的泛射光??赏ㄟ^(guò)設(shè)置一個(gè)顏色常量來(lái)表示環(huán)境光。Ambient = a constant。

Diffuse 只依賴于光源的方向和法線的方向。因此為只和表面與光線入射夾角有關(guān)的光線。我們之所以能看到物體,就是因?yàn)槲矬w將入射的光然后向各個(gè)方向反射(所以稱之為漫反射)。物體的漫反射材質(zhì)屬性對(duì)物體的顏色起著決定性作用。Diffuse = I*cosΘ,Θ為入射角角度,也就是光來(lái)的方向和法線的夾角。

Specular依賴于光源的方向,法線的方向和視角的方向。不但和表面與光線入射夾角有關(guān),而且還和觀察角度有關(guān)的光線,并且根據(jù)表面光滑程度,呈現(xiàn)不同亮度,越光滑,越容易產(chǎn)生高光區(qū)域。在 OpenGL 中,鏡面光的強(qiáng)度可通過(guò)光滑度(shininess)來(lái)調(diào)節(jié)。

Specular = I*cossφ ,其中指數(shù)s就是光滑度。1/s就是粗糙度(Roughness)。
看一下效果圖:
拓幻圖形學(xué)工程師教學(xué)手冊(cè)(第七講)|一字一字敲出OpenGL學(xué)習(xí)教程
下面介紹一下三種不同的光源。

Directional Light 平行光(方向光),可以改變角度??梢月?lián)想太陽(yáng)光。

Point Light 點(diǎn)光源(由一個(gè)點(diǎn)向四周發(fā)射光源),可以改變位置??梢月?lián)想燈泡。

Spot Light 聚光燈(聚光/錐光)。比較耗費(fèi)資源,可以改變位置和角度??梢月?lián)想手電筒。

拓幻圖形學(xué)工程師教學(xué)手冊(cè)(第七講)|一字一字敲出OpenGL學(xué)習(xí)教程
再看一下光源位置不同造成的不同效果:
拓幻圖形學(xué)工程師教學(xué)手冊(cè)(第七講)|一字一字敲出OpenGL學(xué)習(xí)教程
左邊是點(diǎn)光源在人眼位置,右邊為點(diǎn)光源在坐標(biāo)原點(diǎn)。

5.4 使用OpenGL光照

教大家一個(gè)簡(jiǎn)單的運(yùn)用光照的代碼:
拓幻圖形學(xué)工程師教學(xué)手冊(cè)(第七講)|一字一字敲出OpenGL學(xué)習(xí)教程
然后再設(shè)置全局光照信息:
這樣有個(gè)好處就是可以輕松控制光的強(qiáng)度,比如這里的0.3f。

設(shè)置材質(zhì):
拓幻圖形學(xué)工程師教學(xué)手冊(cè)(第七講)|一字一字敲出OpenGL學(xué)習(xí)教程
設(shè)置光源特性:
拓幻圖形學(xué)工程師教學(xué)手冊(cè)(第七講)|一字一字敲出OpenGL學(xué)習(xí)教程
可以將這些代碼整合為以下代碼,放到方法體里面去:
拓幻圖形學(xué)工程師教學(xué)手冊(cè)(第七講)|一字一字敲出OpenGL學(xué)習(xí)教程
拓幻圖形學(xué)工程師教學(xué)手冊(cè)(第七講)|一字一字敲出OpenGL學(xué)習(xí)教程
具體怎么使用,還需要各位參見Github我們的源碼再實(shí)戰(zhàn)一下。才能真正體會(huì)到光照這一塊的用法。

分享文章:拓幻圖形學(xué)工程師教學(xué)手冊(cè)(第七講)|一字一字敲出OpenGL學(xué)習(xí)教程
鏈接地址:http://muchs.cn/article22/gppicc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、外貿(mào)建站、虛擬主機(jī)、網(wǎng)頁(yè)設(shè)計(jì)公司網(wǎng)站導(dǎo)航、App設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名