GI(Global illumination),即全局光照。能夠計(jì)算直接光、間接光、環(huán)境光(ambient)以及反射光(reflection)的光照系統(tǒng)。通過GI算法可以使渲染出來的光更加真是豐富。這里簡單介紹下Light組件的屬性。
“官方吐槽”

1.Type:當(dāng)前光源類型,可分為四種光源:
- Directional:平行光(和位置無光,和角度有關(guān))
說明:平行光對(duì)于在場景中創(chuàng)建陽光等效果非常有用。在許多方面,平行光像太陽,可以認(rèn)為是遙遠(yuǎn)的光源存在無限遠(yuǎn)。平行光沒有任何可識(shí)別的光源位置,因此光源可以被放置在場景中的任何位置。場景中的所有物體都被照亮,就好像光線總是來自同一個(gè)方向。光線到目標(biāo)物體的距離沒有定義,因此光線不會(huì)減弱。
用途:平行光代表來自游戲世界范圍之外的位置的巨大的、遙遠(yuǎn)的光源。在現(xiàn)實(shí)場景中,它們可以用來模擬太陽或月亮。在抽象的游戲世界中,它們是一種有用的方法,可以為對(duì)象添加令人信服的陰影,而無需精確地指定光線來自何處。(最不消耗圖形處理器資源的光源類型)
- Point:點(diǎn)光源(類似于一個(gè)燈泡的效果)
說明:點(diǎn)光源位于空間中的一個(gè)點(diǎn)上,向各個(gè)方向均勻地發(fā)出光。光線照射到物體表面的方向是從接觸點(diǎn)回到物體中心的直線。強(qiáng)度隨著距離光的距離而減小,在指定范圍內(nèi)達(dá)到零。光強(qiáng)度與距離源的平方成反比。這就是所謂的“平方反比定律”,它與現(xiàn)實(shí)世界中的光行為相似。
用途:點(diǎn)光源對(duì)于模擬場景中的燈具和其他局部光源非常有用。(比較耗費(fèi)圖形處理器資源的光源類型)
- Spot:聚光燈(由一個(gè)點(diǎn)像一個(gè)椎體一樣照射,類似于手電筒)
說明:像點(diǎn)光源一樣,聚光燈也有特定的位置和范圍,在這個(gè)范圍內(nèi),光線就會(huì)脫落。然而,聚光燈被限制在一個(gè)角度上,從而形成一個(gè)錐形的照明區(qū)域。圓錐的中心點(diǎn)指向光物體的正(Z)方向。聚光燈錐體邊緣的光也會(huì)減弱。擴(kuò)大角度會(huì)增加圓錐的寬度,同時(shí)也會(huì)增加這種漸淡的大小,也就是所謂的“半影”。
用途:聚光燈通常用于人工光源,如手電筒,汽車前大燈和探照燈。(比較耗費(fèi)圖形處理器資源的光源類型)
- Area(baked only):區(qū)域光
說明:面積光由空間中的矩形定義。光在它們的表面積上均勻地向各個(gè)方向發(fā)射,但只從矩形的一側(cè)發(fā)射。沒有人為地控制一個(gè)區(qū)域光的范圍,然而強(qiáng)度會(huì)在距離源的倒數(shù)平方處減弱。由于燈光計(jì)算過程相當(dāng)重要,所以區(qū)域照明在運(yùn)行時(shí)是不可用的,并且只能烘焙成燈光映射。
用途:因?yàn)橐粋€(gè)區(qū)域的光線會(huì)同時(shí)從幾個(gè)不同的方向照亮一個(gè)物體,所以陰影比其他類型的光線更加柔和和微妙。你可以用它來創(chuàng)建一個(gè)逼真的街燈或靠近玩家的一排燈光。小面積的光線可以模擬較小的光源(如室內(nèi)照明),但比點(diǎn)光源更逼真。(用于實(shí)時(shí)光照,僅用于光照貼圖烘焙)
2.Color:光源的顏色
3.Mode:指定光模式,用于確定光是否和如何被“烘烤”。有三種處理方式:
Realtime:實(shí)時(shí)計(jì)算光照和陰影,如果場景比較大,燈光比較多,會(huì)較消耗性能。
Mixed:Realtime和Baked的混合模式
Baked:烘焙相關(guān)static的物體;將烘焙好的信息映射到一張貼圖上,在運(yùn)行時(shí)將貼圖直接賦予給相關(guān)場景,使其產(chǎn)生“假”的陰影。
4.Intensity:設(shè)置燈光的亮度。Directional的默認(rèn)值是0.5。Point、Spot或Area的默認(rèn)值是1。(2018版本好像都是1)
5.Indirect Multiplier:間接光照的強(qiáng)度。間接光是從一個(gè)物體反射到另一個(gè)物體的光。間接乘法器定義了由全局照明(GI)系統(tǒng)計(jì)算的反彈光的亮度。如果你將間接乘數(shù)設(shè)置為低于1的值,反彈的光會(huì)隨著每次反彈而變暗。值大于1時(shí),每次反彈都會(huì)使光線更亮。
6.Shadow Type:確定這個(gè)光是否有陰影(陰影類型)。Hard Shadows,Soft Shadows,No Shadows。
- Strength:光線照射后的陰影強(qiáng)度,用0到1之間的值表示,0表示陰影消失,1表示陰影呈現(xiàn)黑色。默認(rèn)設(shè)置為1
- Resolution:控制陰影渲染分辨率的質(zhì)量。更高的分辨率增加了陰影的保真度,但是需要更多的GPU時(shí)間和內(nèi)存使用。
- Bias:偏移度;設(shè)置燈光空間的像素位置與陰影貼圖的值比較的偏移量,定義為0到2之間的值,默認(rèn)設(shè)置為0.05。當(dāng)值過小,游戲?qū)ο蟊砻鏁?huì)產(chǎn)生self-shadow,就是物體的表面會(huì)有來自自身陰影的錯(cuò)誤顯示;當(dāng)值過大,陰影就會(huì)較大程度地偏離投影的游戲?qū)ο蟆?/li>
- Normal Bias:控制陰影投射表面沿表面法線收縮的距離,定義為0到3之間的值,默認(rèn)設(shè)置為0.4。
- Near Plane:使用滑動(dòng)條來控制夾面附近的值呈現(xiàn)陰影時(shí),定義為一個(gè)值0.1至10。這個(gè)值被限制在0.1單位或1%的光范圍屬性,以較低的為準(zhǔn)。默認(rèn)設(shè)置為0.2。(這里的幾個(gè)說明只是官方文檔的直譯,之后研究再去理解)
說明:硬陰影性能比軟陰影好(有鋸齒)。軟陰影很消耗性能(但是軟陰影效果比較好),所以需要陰影剔除。
shadow distance(陰影距離):如果等于40則等于距離攝像機(jī)40米以內(nèi)渲染陰影,40米以外不渲染陰影。(這個(gè)參數(shù)在unity2018暫時(shí)沒找到,留待求證)
選中個(gè)別物體,可以在組件中選擇關(guān)閉陰影。
7.Cookie:為光源指定擁有alpha通道的紋理,使光線在不同的地方有不同的亮度。如果光源是Directional或者Spot,可以指定一個(gè)2D紋理。如果光源是一個(gè)Point,必須指定一個(gè)Cubemap(立方體紋理)。(理解為舞廳里面,射燈照射到地上有各種圖案,這里就是放入需要的圖案貼圖)
Cookie Size:用于控制縮放Cookie投影 <Directional參數(shù)獨(dú)有>
8.Draw Halo:繪制一個(gè)光暈(環(huán));直徑為Range的值(Range屬性只有在Spot和Point光照里面才有)
9.Flare:斑耀/炫光;為光源指定斑耀/鏡頭光暈的效果。
10.Render Mode:渲染模式;不同的模式影響光照強(qiáng)度和性能開銷。
- Auto:自動(dòng);根據(jù)光源的亮度以及運(yùn)行時(shí)Quality Settings(質(zhì)量設(shè)置)的設(shè)置來確定光源渲染模式。
- Important:重要;光源逐像素進(jìn)行渲染。一般用非常重要的光源渲染。以每像素進(jìn)行渲染來獲得最明顯的視覺效果(例如,一個(gè)玩家的汽車的前燈)。
- Not Important:不重要;光線總是以更快的、頂點(diǎn)/目標(biāo)光線模式進(jìn)行渲染。
11.Culling Mask:剔除遮罩;根據(jù)層級(jí)(Layer)來排除一些游戲物體不受光照射影響。
這里記錄下不同模式的光照的屬性圖:



Range:光照范圍
Spot Angle:光照角度
說明:區(qū)域光的特殊參數(shù)暫時(shí)不記錄,還不了解
“個(gè)人吐槽”
這里僅僅只是介紹下Unity中l(wèi)ight組件的屬性,實(shí)際上在Unity中還存在“中心控光樞紐”。只是這部分過于復(fù)雜,我暫時(shí)選擇放棄,哈哈!
