Unity光照系統


1、Unity引擎中提供的光照系統叫EnLighten,作為引擎渲染的一部分,負責構建場景中的燈光。

(1)Light組件簡介

  Unity的燈光組件大致分為:光源組件和烘焙組件

  光源:自己能發光,分為Directional Light,Point Lignt,Spot Light。

(2)常見光源類型

  a、Directional Light

  平行光,模仿太陽光,沒有真正的“源”,整個場景中任何一個角落的光照強度是相等的。

  b、Point Lignt

  點光源,從中心呈球形向四周擴散,例如火把,室內燈具。Point Light的效果受到范圍(Range)和強度(Intensity)的影響。和Directional Light不同,點光源的效果受到位置的影響。

  c、Spot Light

  聚光燈,從中心呈扇形向某一個方向發出,受扇形角度(Angle)和范圍(Range)的影響。一般模擬手電筒和車燈。

  d、Area Light

  區域光,與上面3個最大的不同在於只能在烘焙的情況下使用。而Directional Light,Point Lignt,Spot Light能在實時(RealTime)和烘焙(Bake)兩種情況下使用。

2、全局光照

實際開發中,大多數情況下燈光都是相互作用的,如燈光照射到物體A上,A反射的光會照射到物體B,這種關聯關系是通過全局光照(Global Illumination,GI)系統來進行處理的。

全局光照簡介:

  全局光照極大提升了場景中光照的真實性,但是這種程度的實時計算是非常消耗資源的。但從另外一個方面說,我們只需要對場景中的動態物體進行實時計算,保證光照效果,但是對於固定的物體,不應該浪費太多資源。

  這種技術在Unity中稱為烘焙。當對場景進行燈光烘焙后,場景中的光照信息就會存儲在Lightmap中,當場景運行時,Unity就會讀取Lightmap中的數據,無需再次進行計算,避免了不必要的性能消耗。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM