最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Unity Lighting -- 使用Light Probes

2023-03-13 21:20 作者:vivo119  | 我要投稿

什么是動態(tài)物體(dynamic objects)

? ? ? ? 到目前為止的例子中,我們場景中的所有東西都是靜止的。但在實(shí)際的游戲或?qū)崟r應(yīng)用中,場景中有移動的物體很正常,比如走動的人或動物,汽車,飛機(jī)等,它們需要和燈光產(chǎn)生實(shí)時的交互,才會讓游戲或?qū)崟r應(yīng)用看起來更加真實(shí)。

? ? ? ? 首先我們來看一個場景中烘焙光照和實(shí)時光照對動態(tài)物體的影響。

? ? ? ? 在場景中增加一個球體,我們拖動球體到烘焙光照方式的光源下:

? ? ? ? ?然后拖動物體到實(shí)時光照方式的光源下:

? ? ? ? 可以看到,烘焙光照下的光源,球體并沒有被光照影響,如果游戲中出現(xiàn)這張的效果,會讓用戶感到不失真。為什么會這樣?因為當(dāng)我們烘焙出了光照貼圖時,我們存儲的是場景中光源所照亮的靜態(tài)表面的一張快照。這些光線并不會在這些表面上繼續(xù)發(fā)出更多的光線。當(dāng)一個動態(tài)物體進(jìn)入到烘焙光照的區(qū)域時,渲染器需要知道物體所處空間的光源的信息才能計算出光照和陰影。

? ? ? ? 在Unity中為了解決這個問題,需要使用一個工具:Light Probes

什么是Light Probes

? ? ? ? Light Probes可以用來測量(meaure or probe)場景中穿過空白區(qū)域的光線信息。在運(yùn)行時,場景中移動的物體所被打到的光線,通過離物體最近的Light Probe的數(shù)據(jù)來做估計。

? ? ? ? 我們可以用Light Probes來讓烘焙光照更加真實(shí),并且在實(shí)際項目中,相比于real-time的光源,它們也更加高效,當(dāng)然,前提是需要正確地放置Light Probes。

Light Probes要怎么放置?

? ? ? ? 在實(shí)踐之前,我們首先需要了解一些放置Light Probe的方法。

? ? ? ? Light Probes通過Light Probe Group來組織。在Light Probe Group中的每一個Light Probe會測量空間中自身和其周圍的Light Probe的光線。最簡單的Light Probe Group的排布方式是讓所有Light Probe組成一個網(wǎng)格,這個網(wǎng)格放到你想要測量光線的空間區(qū)域里。這個網(wǎng)格至少要有兩個垂直的層次,因此它被稱為3D volume(3D體積)。

? ? ? ? 下圖是一個由8個Light Probe組成的Light Probe Group,被組織成了一個立方體形狀的3D體積空間:


? ? ? ? ?當(dāng)我們創(chuàng)建一個Light Probe Group時,在3D volume中就已經(jīng)包含了八個獨(dú)立的Light Probe。我們可以賦值和擺放Light Probe Group來創(chuàng)建3D網(wǎng)格。

? ? ? ? 在Light Probe Group的Inspector中,有四個按鈕:

? ? ? ? ?Add Probe:增加Light Probe

? ? ? ? Select All: 全選所有Light Probe

? ? ? ? Delete Selected:刪除所選Light Probe

? ? ? ? Duplicate Selected:賦值所選Light Probe

? ? ? ? 對于有強(qiáng)烈光照變化或其他要突出的焦點(diǎn)的區(qū)域,我們可以將Light Probes排布地更加密集一點(diǎn)。這樣做雖然會更復(fù)雜,但能將場景的光照優(yōu)化地更好。

? ? ? ? Light Probes是非常有用的工具,但其最佳的放置位置取決于場景中有什么,以及是如何配置燈光的。在一個項目中,其擺放位置會進(jìn)過多次迭代驗證,以便調(diào)整到最佳效果。

在場景中放置Light Probes

? ? ? ? 1. 在Hierarchy窗口中,添加一個Light Probe Group(Add(+) -> Light -> Light Probe Group)

? ? ? ? 2. 選中新建的Light Probe Group。調(diào)整一下縮放比例,放大并將其移動到我們要放置Light Probe的區(qū)域。這里要注意確保其最高的一層Light Probes的高度要覆蓋到光源的位置。另外還有一點(diǎn)非常重要,一定要確保Light Probes的最下面的一層的高度要在地面以上。如果這一層低于地面,則這些Light Probes無法捕獲到來自地面上的光線,會導(dǎo)致錯誤的結(jié)果發(fā)生。

? ? ? ? ?3. 在Inspecotr中,選擇Edit Light Probes

? ? ? ? 4. 選擇Select All然后選擇Duplicate Selected

? ? ? ? 5. 將復(fù)制的Light Probes移動到當(dāng)前網(wǎng)格的右側(cè)

? ? ? ? 6. 用同樣的方法,將我們需要覆蓋的區(qū)域都覆蓋上(自由發(fā)揮即可)??

? ? ? ? ?7. 完成Light Probes擺放后,在Lighting窗口中點(diǎn)擊Generate Lighting選項(不清楚的朋友請看前面關(guān)于烘焙光照的筆記),等完成后,再看看烘焙燈光下的小球有沒有變化。

?探索更多定義可定制的lightmap選項

? ? ? ? 在Lighting(Window -> Rendering -> Lighting)窗口的Scene標(biāo)簽頁中,嘗試對Lightmapping Setting下拉菜單中的各種屬性進(jìn)行修改,來看看有什么效果。下面列舉幾個比較有趣的屬性:

? ? ? ? Max Bounces:間接光中的光線最大彈射次數(shù)

? ? ? ? Lightmap Resolution:光照貼圖的分辨率,這個值會直接影響光照貼圖的質(zhì)量。增加這個值會讓光照貼圖更加細(xì)膩,但同時會增加generate lighting的時間

? ? ? ? Albedo Boost:材質(zhì)反射率增強(qiáng)系數(shù),可用于加量材質(zhì)本身的顏色

? ? ? ? Indirect Intensity:控制間接光的亮度

檢視場景的Light Probes的工具

? ? ? ? Unity Editor有一系列診斷視圖和工具用來檢視和評估場景的光照狀態(tài)。

? ? ? ? 在Light Explorer窗口和診斷視圖檢查Light Probes的方法:

? ? ? ? 1. 打開Light Explorer窗口(Window -> Rendering -> Light Explorer)

? ? ? ? 2. 選擇Light Probes標(biāo)簽頁,可以查看場景中的Light Probes的狀態(tài)

? ? ? ? ?3. 在Scene窗口的控制欄中,點(diǎn)擊Draw Mode下拉菜單(左上角的箭頭),選擇Contributor/Receivers(在Global Illumination里)

? ? ? ? ?隨后場景中會用不同顏色來表示場景中哪些是光線的貢獻(xiàn)者,哪些是接受者。

? ? ? ? ?簡單說一下三種不同顏色表示的意義:

? ? ? ? 黃色: GameObject沒有被設(shè)置為Static,不會在lightmap計算中產(chǎn)生任何貢獻(xiàn)(顏色或光線)。它會接收場景中Light Probes的光線數(shù)據(jù)。

? ? ? ? 藍(lán)色:GameObject包含在lightmap計算中,它接收來自場景l(fā)ightmap的光線數(shù)據(jù)。這是完全烘焙的游戲物體的標(biāo)準(zhǔn)狀態(tài)。

? ? ? ? 紅色:GameObject包含在lightmap計算中,它接收來自場景中Light Probes的光線數(shù)據(jù)。


Unity Lighting -- 使用Light Probes的評論 (共 條)

分享到微博請遵守國家法律
健康| 荔波县| 磐石市| 玛纳斯县| 若羌县| 屏东市| 屯门区| 萨迦县| 墨竹工卡县| 宝坻区| 海原县| 黔西县| 宜章县| 德安县| 东海县| 大埔区| 巴林左旗| 嘉黎县| 武平县| 轮台县| 海城市| 高雄市| 寿宁县| 天水市| 安阳县| 中超| 新乡市| 鹤山市| 延边| 云霄县| 黄浦区| 徐闻县| 西贡区| 临江市| 耒阳市| 德昌县| 友谊县| 周宁县| 苍溪县| 南木林县| 北海市|