Unity3D技術之深刻了解光照貼圖詳解

 


深刻了解光照貼圖
 

若是是第一次接觸 Unity 中的光照貼圖,本快速入門指南將對您有所幫助。算法

 

      光照貼圖徹底集成到 Unity 中,可在編輯器 (Editor) 中建立整個關卡,而後對其進行光照映射,讓全部材質自動獲取光照貼圖,無需手動進行。對 Unity 中的光照貼圖來講,全部燈光屬性會直接映射到 Beast 光照烘培貼圖工具中並烘培到紋理,提升性能。Unity 專業版擴展了全局照明 (Global Illumination) 功能,可烘培出真實、美觀的光照,實時的相反操做則不可行。此外,Unity 專業版提供天光和發光材質,使場景照明更加有趣。 在本頁中,您將看到光照貼圖 (Lightmapping) 窗口中出現的全部屬性的深刻描述。要打開光照貼圖 (Lightmapping) 窗口,請選擇窗口 (Window) – 光照貼圖 (Lightmapping) 選項。數組


204216skngd65cqdtzozao.jpg 
 

檢視器頂部有三個場景篩選器 (Scene Filter) 按鈕,供用戶將操做應用到全部對象或限制在燈光或渲染器內。app



對象 (Object)


每一個對象的燈光、網格渲染器和地形烘培設置根據當前的選擇而定。編輯器

單擊場景篩選器 (Scene Filter) 按鈕可在層級視圖 (Hierarchy) 中輕鬆看到燈光、渲染器或地形。函數

網格渲染器和地形 (Mesh Renderers and Terrains):工具

 

   
靜態光照貼圖 (Lightmap Static) 網格渲染器和地形 (Mesh Renderers and Terrains) 須標爲靜態才能進行烘培。
光照貼圖比率 (Scale In Lightmap)

(僅用於網格渲染器 (Mesh Renderers))值越大,網格渲染器的分辨率越高。最終分辨率將成比例(光照貼圖縮放 (Scale))*(對象的世界座標空間所佔面積)*(全局烘培設置分辨率 (Resolution) 值)。值設置爲 0 將不烘培對象(但仍會影響其餘烘培對象)。性能

光照貼圖大小 (Lightmap Size) (僅用於地形)地形實例的光照貼圖大小。地形不與其餘對象共用圖集,而是有本身的光照貼圖。
圖集 (Atlas)

若是禁用鎖定圖集 (Lock Atlas),圖集信息 – 將自動更新。若是啓用鎖定圖集 (Lock Atlas),這些參數不會自動修改,可手動編輯。spa

光照貼圖索引 (Lightmap Index) 光照貼圖數組中的索引。
平鋪 (Tiling) (僅用於網格渲染器 (Mesh Renderers))對象的光照貼圖 UV 平鋪。
偏移 (Offset) (僅用於網格渲染器 (Mesh Renderers))對象的光照貼圖 UV 偏移。

 

燈光 (Lights):htm

 

   
光照貼圖 (Lightmapping) 光照貼圖 (Lightmapping) 模式:僅限實時 (Realtime Only)、自動 (Auto) 或僅限烘培 (Baked Only) 模式。參閱如下雙重光照貼圖 (Dual Lightmaps) 說明。
顏色 (Color) 燈光顏色。實時渲染採用相同屬性。
強度 (Intensity) 燈光強度。實時渲染採用相同屬性。
反彈強度 (Bounce Intensity) 特定光源發出的間接燈光強度的倍增值。
烘培陰影 (Baked Shadows) 控制這盞燈照明的對象是否投射陰影(在自動燈光 (Auto) 的狀況下控制實時陰影)。
陰影半徑 (Shadow Radius) (僅用於點光源和聚光燈)增長該值造成直接軟陰影,增長該燈光投影(而非照明)的覆蓋面積計算。
陰影角度 (Shadow Angle) (僅用於方向燈)增長該值造成直接軟陰影,增長該燈光投影(而非照明)的角度覆蓋面積計算。
陰影採樣 (Shadow Samples) 若是將陰影半徑 (Shadow Radius) 或角度 (Angle) 值設爲大於零的數,將相應增長陰影採樣 (Shadow Samples) 的數量。高採樣值將消除半影中的噪點,但會增長渲染次數。


烘培 (Bake)

全局烘培設置
 對象

   
模式 (Mode) 控制脫機光照貼圖烘培和運行時的光照貼圖渲染模式。在雙重光照貼圖 (Dual Lightmaps) 模式中,近端和遠端的光照貼圖都會烘培;只有延遲渲染路徑支持渲染雙重光照貼圖。單光照貼圖 (Single Lightmaps) 模式只會使遠端的光照貼圖被烘培;延遲渲染路徑中也可強制使用單光照貼圖 (Single Lightmaps) 模式。
使用向前渲染 (Use in forward rendering) (僅用於雙重光照貼圖 (Dual lightmaps))在向前渲染中啓用雙重光照貼圖。注意,在該選項中要求建立本身的着色器用於操做。
質量 (Quality) 高質量(效果好)和低質量(速度快)烘培的預設值。它們會影響最終彙集光線的數量、對比度閾值及部分其餘最終彙集和抗鋸齒設置。
反彈 (Bounces) 全局照明 (Global Illumination) 模擬中光線反彈的次數。至少要有一次反彈才能造成真實柔和的間接光線。設置爲 0 時只會計算直接光線。
天光顏色 (Sky Light Color) 天光模擬天空各個方向放射出的光線,很適合室外場景。
天光強度 (Sky Light Intensity) 天光的強度,值設置爲 0 將禁用天光。
反彈加強 (Bounce Boost) 容許加強黑暗場景中的光線反彈。若是場景中包含黑暗材質,可用直接強光補充。間接照明將很是微弱,由於反彈光線會快速消失。將反彈加強的值設置爲大於 1 可經過將反射率顏色值推向 1 用於 GI 計算,對此進行補償。請注意,0 至 1 之間的值會減小光線反彈。實際計算按照每一個組件的 pow(colorComponent, (1.0/bounceBoost)) 進行。
反彈強度 (Bounce Intensity) 間接光線強度的倍增值。
最終彙集光線 (Final Gather Rays) 每一個最終匯集點發射出的光線數量,值越高,質量越好。
對比度閾值 (Contrast Threshold) 顏色對比閾值,據此,新的最終匯集點採用適當的採樣算法進行建立。值越高,Beast 容許的表面照明變化越多,從而產生較平滑、不太詳細的光照貼圖。最終彙集光線數量越少,須要的對比度閾值越高,從而不迫使建立其餘最終匯集點。
插值 (Interpolation) 控制最終匯集點顏色的插值。0 表示線性插值,1 表示基於梯度的高級插值。在某些狀況下推薦使用後者。
插值點 (Interpolation Points) 插入最終匯集點之間的數值。數值越高,效果越平滑,但也會消除照明中的細節。
環境光遮擋 (Ambient Occlusion) 烘培至光照貼圖中的環境光遮擋量。環境光遮擋指集成了本地半球大小最大距離 (Max Distance) 的可見性函數,所以不考慮任何照明信息。
鎖定圖集 (Lock Atlas) 啓用鎖定圖集 (Lock Atlas) 時,自動圖集不會運行,對象的光照貼圖索引、平鋪和偏移不能修改。
分辨率 (Resolution) 每世界單位的光照貼圖分辨率大小,將分辨率設置爲 50 的 10×10 單位平面將產生一張 500×500 紋素的光照貼圖。

填充 (Padding)

圖集上單個項目之間剩餘的空白區,以紋素單位 (0..1) 表示。



貼圖 (Maps)

全部光照貼圖的可編輯數組。
 

   
壓縮 (Compressed) 控制是否壓縮場景中全部光照貼圖資源。
數組大小 (Array Size) 光照貼圖數組的大小(0 至 254)。
光照貼圖數組 (Lightmaps Array) 當前場景中全部光照貼圖的可編輯數組。未指定的通道處理爲黑色光照貼圖。索引至關於網格渲染器和地形 (Mesh Renderers and Terrains) 中的光照貼圖索引 (Lightmaps Index) 值。除非啓用鎖定圖集 (Lock Atlas),不然該數組將自動調整大小並在烘培光照貼圖時進行填充。


光照貼圖顯示 (Lightmap Display)

控制光照貼圖如何在編輯器中顯示的工具。光照貼圖顯示 (Lightmap Display) 是場景視圖 (Scene View) 的一個子窗口。只要光照貼圖 (Lightmapping) 可見,就顯示該子窗口。
 

   
使用光照貼圖 (Use Lightmaps) 控制是否在渲染時使用光照貼圖。
陰影距離 (Shadow Distance) 自動 (Auto) 模式燈光與近端 (Close By) 光照貼圖淡出爲遠端 (Far Away) 光照貼圖之間的距離。該設置重寫 QualitySettings.shadowDistance 設置但不會覆蓋。
顯示分辨率 (Show Resolution) 控制場景視圖中的光照貼圖分辨率 (Lightmap Resolution) 模式,開啓該模式可預覽靜態對象的光照貼圖紋素大小。
相關文章
相關標籤/搜索