真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Opengl_18_聚光燈光源-創(chuàng)新互聯(lián)

1,
聚光燈光源也會隨著距離衰減,但它不是像點(diǎn)光源照向四面八方的而是像平行光那樣有一個(gè)聚光方向(相當(dāng)于取點(diǎn)光源的一個(gè)錐形的一小部分),聚光燈光源呈錐形,因此有一個(gè)新的屬性,就是離光源越遠(yuǎn),照亮的圓形區(qū)域會越大(光源位于錐形體的尖端)。例如:手電筒。

圖中垂直指向地面的黑色尖頭指的是光源方向,這里想實(shí)現(xiàn)讓光源只照亮兩條紅線夾角之間的區(qū)域,這里仍然可以使用點(diǎn)積來實(shí)現(xiàn)。我們可以定義光錐為光線方向L和紅線之間的那個(gè)夾角(兩條紅線之間夾角的一半)。計(jì)算那個(gè)夾角的余弦值'C'(點(diǎn)積計(jì)算得到)以及L和V夾角的余弦,其中V指的是光源到某個(gè)像素的向量,如果后者的值大于余弦值'C'(夾角越小余弦越大),說明L和V之間的夾角偏小,該像素就位于被照亮的區(qū)域內(nèi)。反之,像素位于區(qū)域外就不會被該光源照亮。

如果我們緊緊按照上面說的在照亮區(qū)域內(nèi)就點(diǎn)亮像素,否則就不點(diǎn)亮,那樣就會看上去非常假,因?yàn)檎樟羺^(qū)域和未照亮區(qū)域之間的邊界邊緣會非常明顯(沒有一個(gè)自然的過渡),看上去會是一個(gè)清晰的圓形畫在一個(gè)黑色區(qū)域(如果沒有其他光源的話)。一個(gè)真實(shí)的聚光燈光源會從照亮區(qū)域的中心向圓形邊緣慢慢衰減。這里我們可以利用上面計(jì)算得到的那些點(diǎn)積作為一個(gè)衰減的參數(shù)。首先我們知道,當(dāng)L和V兩個(gè)向量相等重合時(shí),點(diǎn)積為'1'。但是用余弦來做衰減參數(shù)會有問題,因?yàn)榫酃鉄艄庠吹膴A角不能太大,否則范圍太廣就失去了聚光燈的效果,但是在夾角從0到一個(gè)比較小的角度范圍內(nèi),cos值得變化是很緩慢的,導(dǎo)致衰減不明顯。例如:讓聚光燈的夾角為20度,余弦值就為0.939,[0.939,1.0]這個(gè)變化范圍就不好作為衰減參數(shù)了,在這個(gè)范圍內(nèi)進(jìn)行插值的空間不足,造成的衰減程度不足以讓眼睛察覺到。要想衰減效果明顯這個(gè)參數(shù)范圍應(yīng)該是[0,1]。解決方法是將這個(gè)參數(shù)的小范圍映射到[0,1]的范圍,方法如下:

原理很簡單:計(jì)算大的范圍和小的范圍的比例,然后根據(jù)那個(gè)比例對小范圍進(jìn)行映射擴(kuò)張即可。

2,

聚光燈光源的結(jié)構(gòu)體繼承自點(diǎn)光源的結(jié)構(gòu)體,并添加了兩個(gè)屬性和點(diǎn)光源區(qū)別開:一個(gè)是光源的方向向量,另一個(gè)是截?cái)喙庠凑樟练秶囊粋€(gè)閾值。閾值代表的是光源方向向量和光源到可照亮像素之間的大夾角。比這個(gè)閾值夾角大的像素是不會被該光源照亮的。




這里vec4 CalcSpotLight(SpotLight l, vec3 Normal)這個(gè)函數(shù)是我們計(jì)算聚光燈光源效果的地方。首先得到光源到某個(gè)像素的向量,將向量單位化方便點(diǎn)積運(yùn)算,然后和單位化了的光源方向向量進(jìn)行點(diǎn)積運(yùn)算得到他們之間夾角的余弦值。將得到的余弦值和光源的閾值(定義光源范圍的大夾角的余弦值)進(jìn)行比較,如果余弦值比閾值小,說明夾角太大像素在照亮圓區(qū)域的外面,這樣像素就不會被該光源點(diǎn)亮。這樣那個(gè)閾值就可以將聚光燈光源的照亮范圍限制在一個(gè)大的或者小的圓圈內(nèi)。反之如果像素在照亮區(qū)域內(nèi),我們就先像點(diǎn)光源那樣計(jì)算光源的基礎(chǔ)顏色。然后將那個(gè)點(diǎn)積計(jì)算得到的參數(shù)'SpotFactor'放到上面的公式中,將這個(gè)參數(shù)線性插值到0到1的范圍,最后和點(diǎn)光源顏色相乘計(jì)算得到最終的聚光燈顏色值。



創(chuàng)新新互聯(lián),憑借十載的成都網(wǎng)站建設(shè)、成都做網(wǎng)站經(jīng)驗(yàn),本著真心·誠心服務(wù)的企業(yè)理念服務(wù)于成都中小企業(yè)設(shè)計(jì)網(wǎng)站有上1000家案例。做網(wǎng)站建設(shè),選創(chuàng)新互聯(lián)公司。

3,


本文題目:Opengl_18_聚光燈光源-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://weahome.cn/article/djdcis.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部