2016/12/03

V-Ray 3.5 Adaptive Lights 自適應燈光

原文 / Understanding Adaptive Lights
作者 / labs.chaosgroup.com
翻譯 / Hammer Chen

Dabarti工作室的Tomasz Wyszołmirski先生,他是V-Ray for 3ds Max的beta版測試員,最近正在測試新的功能 ─ 叫做自適應燈光(Adaptive Lights)。 這項功能應該會加到V-Ray的service pack 5當中, 他在部落格寫到自適應燈光的選項可以讓算圖變得多快。

但到底什麼是自適應燈光呢 ?儘管光跡追蹤(raytracing)可以提供我們最寫實的燈光算圖, 這樣的演算法帶來許多挑戰。 常見的問題是當場景中有很多燈光的時候 ,V-Ray 3.0時提供簡單處理大量燈光的方式, 叫做機率光(Probabilistic Lights) 。在這次V-Ray 3的service pack 5中 ,我們將提供改進的功能叫做自適應燈光(Adaptive Lights)。


聲明:自適應光還在研發階段, 範例與結果並不一定會與最終出貨的產品完全相同

為了要理解這項功能, 讓我們拆解一下, 在任意shading point 幾種不同評估光源的方法:
全燈光 Full lighting
這個方法是在V-Ray 3.0之前的版本處理多個燈光的方式, 也就是每個射線打到了, 我們會評估每個光源 。當場景有5或10盞燈, 通常不是什麼問題, 但是當場景有100甚至1000盞燈, 會明顯地拖慢算圖速度。
機率光 Probabilistic Lights
這個方法是對每個撞擊到的射線, 我們隨機地調選出小量、 固定數量的光源。 預設值為16盞燈。 在本例中,為了圖示方便我們畫了5盞。 這樣會明顯地減少shaded point需要計算的數量 。因為下一個射線會拾取另5盞燈, 我們通常會射出百萬個射線, 平均起來每盞燈都會考慮到 。一般來說 ,這個方法會比舊的方法快, 因為舊的方法把每盞燈的每個射線都考慮進去 ;然而機率光的缺點是可能會帶出雜訊, 可能要更多採樣才能把雜訊移除。 除此之外, 某些shading points可能會把攝影機看不到的燈光, 或是沒有貢獻照明的考慮進去。
自適應燈光 Adaptive Lights
這個方法是基於機率光的方法, 但是對於要計算進去的燈光, 選擇的方式更為智慧些 。這是基於Light Cache pass 。光快取Light Cache基本上用在全局照明(Global Illumination) ,但是光快取也給了V-Ray對於場景有哪些特徵好的概念。 最後, 原本是要隨機地拾取5盞燈, V-Ray的自適應燈光算法挑選了最可能影響shaded point的5盞燈 。這個方法讓V-Ray以更快的方式取的乾淨無雜訊的算圖。說的更明白些 ,當使用光跡追蹤算圖器 ,機率光可能對於處理大量光源還算聰明。在大部分的狀況, 當使用大量光源, 執行起來很不錯。 但是說到要根據Light Cache的結果更智慧地選取燈光, 自適應的燈光評估法(Adaptive Lights evaluation)一般來說更優。
在下面的範例中, 我們研究了有很多隔間的大空間 。場景放了168盞燈。 我們比較了,全燈光、機率光與自適應光三種不同的條件。
低光源Low Lights
第一個測試 ,我們把燈光調的比較低, 因為隔間的關係, 大部分的光線只會影響其接近的區域。

中光源Mid Lights
接著我們提高光源的高度 ,會影響更多範圍

高光源High Lights
最後我們把光源提到很高, 每盞燈幾乎會影響到整個場景

所有的影像都以相同noise threshold渲染, 所有雜訊都差不多, 以下是測試結果:

儘管這項測試式針對新的自適應方法的優勢所設計的, 實驗結果也真的發現, 某些條件下, 機率光會有提高雜訊的缺點。 同時, 自適應光很穩定地具有好的效能, 及便是在機率光表現好的條件下, 自適應光也改善了原本的算圖品質、 速度也更快。

我們強烈建議您參訪Tomasz Wyszołmirski的部落格。看看他對於全光源、  機率光與自適應光效能評測的完整資料。
Post a Comment