unity3d 5 6烘焙教程

2022-06-22 01:54:18 字數 3709 閱讀 7092

progressive 光照優勢就是能很快看到乙個區域的光照效果,而且在高引數下烘焙非常快,可以隨時停止,效果依然保留,這個功能好多了

缺點也挺多的,比如只支援兩個模式(看下面,有些效果會缺失),引數高的時候記憶體占用非常大,如果記憶體小的機器很容易崩潰

enlighten比較還是比較傳統,記憶體消耗不多,比較不容易崩潰,支援所有模式,所以需要高階效果的時候還是這種支援的多

但是缺點是不到渲染結束看不到效果,相同引數下烘焙時間感覺長了不只好幾倍

下面是兩個白模渲染效果對比

可以看到其實漸進式的效果範圍ao效果範圍更廣更暗一些

關於新版本還有4種光照模式,有些理解起來還都是挺糾結的

而且官方和其他教程解釋得都比較抽象,所以下面以質量為主進行一些說明

表面上這些設定和mixed燈光有關,屬於混合燈光方面的內容

lightmode具體可以看這裡

關於混合燈光四種模式區別具體看下面的

但這些與烘焙質量也有很大關係,我測試了以陰影質量為主列下面的表

下面討論的專案是在bake light下,directional模式下

陰影質量

enlighten

燈光設定

progressive

燈光設定

baked indirect

記憶體占用少,動態質量一般,消耗一般

mixed 近處硬 遠處消失 動態投影   baked 軟陰影

baked mixed 軟陰影

distance shadowmask

記憶體占用高,動態質量高,消耗高

mixed 近處硬 遠處軟 動態投影 baked 軟陰影

不支援 如果強行使用效果同上

shadowmask

記憶體占用低,動態質量差,靜態質量高,消耗低

mixed 軟 靜態物體無動態投影  baked 軟陰影

不支援 如果強行使用效果同上

subtractive

記憶體占用低,質量低,消耗低

mixed 軟 靜態物體無動態投影  baked 軟陰影

baked mixed 軟陰影

混合燈光模式:

說一下下面的模式主要針對的都是混合燈光也就是mixed方式,動態和靜態雖然有的模式能相互投影但是影子依然會非常銳利,具體如何使用實時陰影取決於shadowdistance的值和光照模式。

shadow map就是普通的即使陰影,就是比較銳利的陰影

有乙個不可能,就是不能實時動態物體投下很軟的陰影

效能消耗

大型,戶外                        標準,室內         室內,小型靜態,手遊       小型,手遊

distance shadowmask > baked indirect >     shadowmask                 > subtractive

下面是具體說明,官網內有更詳細解釋

我的主要是關注陰影質量

baked indirect mode

效能消耗一般,適合有動態光源物體的室內專案,中低端pc遊戲或者高階移動端遊戲

baked燈光會烘焙下所有靜態物體並產生軟陰影,baked燈光會穿透動態物體(動態物體不會被baked燈光照亮)

realtime和mixed燈光會在陰影距離內產生比較銳利的影子。距離外不投影忽視物體。

mixed和baked燈光能烘焙出靜態物體的反射光

realtime lighting下 realtime燈光也能烘焙出靜態物體的反射光

distance shadowmask (只支援enlighten)

效能消耗高,適合任何有大量動態物體的大場景遊戲,適合高階pc

baked燈光會烘焙下所有靜態物體並產生軟陰影,baked燈光會穿透動態物體(動態物體不會被baked燈光照亮)

mixed燈光會烘焙下所有靜態物體並在超出陰影距離的時候使用軟陰影,不超出的時候使用實時硬陰影

realtime燈光會在陰影距離內產生比較銳利的影子。距離外不投影忽視物體。

mixed和baked燈光能烘焙出靜態物體的反射光

realtime lighting下 realtime燈光也能烘焙出靜態物體的反射光

烘焙的shadowmask上的顏色不是燈光顏色,而是靜態光的顏色,只能有四盞燈,分為rgba

mixed燈光產生的陰影將被分離到新的烘焙貼圖中,所以這個模式下mixed燈光顏色和位置可以在烘焙後改,還是軟陰影

shadowmask (只支援enlighten)

效能消耗比較低,適合室內小型無多少動態物體的專案,適合中低端pc和移動端遊戲

baked和mixed燈光會烘焙下所有靜態物體並產生軟陰影,baked和mixed燈光會穿透動態物體(動態物體不會被baked燈光照亮)

realtime燈光會在陰影距離內對動態物體產生比較銳利的影子。靜態物體不會在動態燈光下產生投影,距離外不投影忽視物體。

mixed和baked燈光能烘焙出靜態物體的反射光

realtime lighting下 realtime燈光也能烘焙出靜態物體的反射光

烘焙的shadowmask上的顏色不是燈光顏色,而是靜態光的顏色,只能有四盞燈,分為rgba

mixed燈光產生的陰影將被分離到新的烘焙貼圖中,所以這個模式下mixed燈光顏色和位置可以在烘焙後改,還是軟陰影

subtractive

效能消耗很低,適合小型無多少動態物體的專案,適合中低端pc和移動端遊戲

baked和mixed燈光會烘焙下所有靜態物體並產生軟陰影,baked和mixed燈光會穿透動態物體(動態物體不會被baked燈光照亮)

realtime燈光會在陰影距離內對動態物體產生比較銳利的影子。靜態物體不會在動態燈光下產生投影,距離外不投影忽視物體。

mixed和baked燈光能烘焙出靜態物體的反射光

realtime lighting下 realtime燈光也能烘焙出靜態物體的反射光

是以前的老模式,是用於低效能裝置,光照被烘焙到貼圖中。

基本材質烘焙的對比

反射狀態final gather效果

關於directional specular

由於在前面的版本裡就已經標記成將要廢棄的選項,這個版本就沒有了

但是以前用這個可以表現出高光細節(就是法線貼圖下的高光效果),現在要怎麼表現呢

這個就只能借助enlighten了,需要將光照模式改成shadow mask或者 distance shadow mask,使用directional,而且光照也必須改成mixed模式

參考對後面期望當然是渲染最好能分層

比如現在還是烘焙無視layer設定,包括燈光的

Unity3D教程寶典之光影烘焙 第一講光影烘焙

介面3 maps 烘焙好後的map在這裡顯示。compressed 是否壓縮lightmap array size 0 254 lightmaps array的尺寸 lightmaps array 即下方的4張貼圖,空格會被視為黑圖,指數即下方的 0,1對應mesh renderer及terrain...

unity3d 中烘焙的複雜關係,個人理解

烘焙 將光照效果以 預製 的形式對物體 貼圖 進行修改 光vs照明 從面板區分 光 有兩種形式,在 層級 面板中的和在 照明 選項中的 層級面板中如 平行光 定向光 點光,聚光,區域光。在照明選項中 環境光,環境反射。之所以這樣區分,是因為環境與層級的烘焙是分開的。ps 層級光本質是外掛程式。例如 ...

Unity3D嵌入WPF教程

建立乙個 類庫工程 新增 windowform 使用者控制項 usercontrol 1 引入 untiywebplayer com 元件 在工具 選擇工具箱中找到unitywebplayer.dll並新增 2 在使用者控制項中新增unitywedplayer控制項 在工具箱中直接拖拉即可 2 將 ...