V-Ray Luminaires: 大幅加快複雜燈具的渲染速度,並提升渲染精確度

V-Ray Luminaires 功能是在 V-Ray 7 推出的一項新技術功能,能以極短的時間快速渲染複雜的燈具。

在這篇文章中,Vlado 將帶領我們深入了解其運作方式。

現實中的燈具在打造寫實的視覺效果時是不可或缺的,無論是室內還是室外場景。這些燈具通常是由光源與其周圍的漫射、透光或反射材質所組成的複雜結構,目的是實現所需的光線分布。然而,精確模擬這類燈具所產生的整體照明效果是極其耗費運算資源的,因此在多數情況下,為了在合理的時間內完成渲染,這些燈具往往會被簡化處理。

大多數 Chaos 產品內建的 Cosmos 資料庫中,包含了許多燈具模型,其中一些甚至是由實際製造這些燈具的公司所提供。因此,這些模型以寫實方式建構,能夠在 3D 場景中準確呈現實體產品。儘管這些模型高度精確,但渲染起來也可能會相對困難。

V-Ray 7 推出的 V-Ray Luminaires,提供了一種全新的方式,能夠高效且精確地渲染這類燈具。在前置計算階段,我們會預先計算出燈具周圍的精確光場——也就是從燈具表面朝各個方向發出的光線強度——並將其儲存於一個與 Cosmos 模型配套的檔案中。當從 Cosmos 資料庫匯入模型時,除了幾何與光源外,還會自動建立一種新型光源,稱為 VRayLuminaire light。這種光源涵蓋了燈具的某些部分,並在從外部觀看時模擬其發光行為。VRayLuminaire light 會參考預先計算的光場資料,並可用來控制整體燈具的各項屬性——包括燈光的顏色與強度。

以下是一個簡單範例,場景中由兩盞燈具進行照明。每盞燈具都由一個光源與其外部的燈罩組成,這也是現實中常見的設計。

如果在沒有使用 Luminaire 光場的情況下進行渲染,結果會如下所示:

在未使用 Luminaire 光場的情況下渲染場景耗時 21 分 50 秒

對應的取樣率

此場景在 AMD Threadripper 2990WX 處理器上渲染約需 22 分鐘。即使設定了 1/40 的 AA 子取樣(subdivs),渲染結果仍然相當雜訊明顯,且圖像中多數像素都使用了每像素最大取樣次數(從取樣率渲染元素中的紅色像素可見),仍無法達到預設的雜訊門檻。這是因為場景中大部分的光線是透過燈罩內部的多次反射照亮空間所致。此外,V-Ray 預設會對某些全域光照(GI)進行限制,以控制渲染時間(透過 “Max ray intensity” 參數設定)——但這也會導致燈具產生的照明略微變暗。

相反地,若在相同場景中啟用 Luminaire 光場來進行渲染,結果會如下所示:

使用 Luminaire 光場渲染場景耗時 1 分 1 秒

對應的取樣率

使用 Luminaire 光場的版本渲染速度大幅提升(1 分鐘對比之前的 22 分鐘),同時最終結果也更少雜訊,因為幾乎所有區域都達到了雜訊門檻。此外,光線的分布也更為準確,且不會因為光線被限制(clamping)而導致亮度損失。

另一個範例則展示了 VRayLuminaire 在需要計算複雜光線傳輸路徑時的優勢。在以下示例中,燈具的發光來自一層薄紙材質,該材質將內部球形光源的光線散射出去。這類場景對任何渲染器來說都很難處理。若未使用 Luminaire,影像渲染會非常緩慢,且亮度低於應有的程度——這是因為 V-Ray 預設會限制全域光照(GI)光線的貢獻,以加快渲染速度。若我們想更準確地還原燈具的發光效果,必須關閉 “Max ray intensity” 參數——雖然這會讓結果更接近預期亮度,但計算時間也會更長。即便使用 1/100 的自適應影像取樣(adaptive image samples),仍然無法讓整張圖達到理想的雜訊門檻(從取樣率渲染元素中可見紅色區塊)。

相較之下,使用 VRayLuminaire 可以在極短的時間內完成渲染,並且得到更精確的光線分布效果。

未使用 VRayLuminaire,啟用 Max ray intensity:53 分鐘

未使用 VRayLuminaire,關閉 Max ray intensity:2 小時 46 分鐘

使用 VRayLuminaire:1 分 11 秒

Chaos Cosmos 中的大多數燈具模型都附有 luminaire 檔案,因此使用時只需拖放即可。如果某個燈具沒有 luminaire 檔案,可能是因為它本身沒有光源,或者加入 luminaire 並不會提升渲染效果(例如光源直接照亮場景,且沒有複雜的光線傳輸)。

使用 VRayLuminaire 光源

如果某個燈具有附加 VRayLuminaire 物件,那麼該燈具所發出的光線(如強度與色溫)應由 VRayLuminaire 物件來控制。然而,目前若將 VRayLuminaire 光源關閉,僅會停用光場計算,並不會關閉燈具中原本的傳統光源。若要完全關閉該燈具的所有光線輸出,最簡單的方法是將 VRayLuminaire 光源的強度設為 0.0。

同樣地,在 VRayLightMix 系統中,燈具原本的光源與 VRayLuminaire 光源會分別顯示;這項行為預計會在後續的 V-Ray 7 版本中進一步改進。

About the author

Vladimir Koylazov

作為創新部門負責人,Vladimir “Vlado” Koylazov 領導 Chaos 的創新實驗室,並負責指導公司在最新技術領域的研究、開發與實驗。他於 1997 年共同創辦 Chaos,並開發了全球知名的渲染軟體 V-Ray,曾擔任首席技術長(CTO)超過 20 年。在此期間,他一直是 Chaos 軟體開發與研發的核心推動力,同時也是全球電腦圖學(CG)社群中的活躍成員。Vlado 畢業於索菲亞大學數學與資訊學院。

您可能也對以下訊息有興趣

最新情報第一手獲得

請訂閱電子報

    關注 SketchUp     
    關注 Foundry   
    光聯國際 / 佳能國際 商業解決方案創新事業群 Condata International Co., Ltd. / Abico Enterprise Solution
    ©2018 All Copyright Reserved.
    - made by bouncin