2013/07/02

VRay 3.0 新增功能搶先報

V-Ray之父Vlado

原文:Highlights from Vlado’s V-Ray 3.0 sneak peek presentation at EUE 2013
作者:Torgeir Holm
翻譯:Hammer Chen

Vladimir “Vlado” Koylazov先生在荷蘭的烏特勒支所舉行的每年用戶大會上發表演說,透漏了下重大版本的V-Ray可能推出的功能。大家都很感興趣,擠滿了整個演講廳,因此一小時候他還必須要重講第二場 (譯者注:講給其他沒聽到的人聽)。

以下是改良功能(但是不保證)將出現在V-Ray 3.0中:

Brute force算圖速度改進
VRay的研發已經超過10年了。Brute force的方法整體來說速度過慢,不適合用在專案上,也因此研發了速度較快的,偏差的方法(biased methods),例如:irradiance maplight cache,也導致了V-Ray並沒有特地最佳化brute force路徑追蹤。相對地,偏差法的副作用是動畫會閃爍以及其他的一些算圖錯誤(artifacts)。

從V-Ray一開始推出到現在,物換星移。有了今日的硬體與演算法的進步,brute force的實用性變高,也因此Chaos Group花時間最佳化內部的程式碼,以最佳化路徑追蹤(path tracing)的演算, 也添加了對Embree raycaster的支援(當你使用Intel處理器時能夠採用這個功能)。

還有很多需要開發的部份,但是下例中你可以看到速度上的顯著進步,這個教室場景,以V-Ray 2.4算圖花費了15分鐘44秒;若是以V-Ray 3.0 beta採用Embree只花了5分鐘55秒,也就是說brute force算圖提昇了2.66倍的算圖速度!




Brute force算圖最佳化

最大射線強度(Max ray intensity)
brute force path tracing另一個大問題就是會出現白點的問題。要提昇採樣到非常高才有可能讓這白點的問題消失。要清除這白點非常困難,因為很難找到反射與折射焦散(caustics)的路徑。V-Ray 3.0新增了max ray intensity這個參數,將會顯著地減低這個問題,這個選項很類似“clamp output” 但是針對個別的射線,而不是對影像採樣。只會套用在二級射線,因此第一級射線的資訊能保留。儘管這不是物理精確的,也會移除場景中某些光線,但能很迅速地讓畫面更乾淨。


套用Max ray intensity 使用前與使用後

漸進式的算圖(Progressive rendering)
V-Ray 3.0提供新的image sampler稱為progressive rendering。這個sampler會作用在整個畫面上,跟V-Ray RT一樣。跟bucket sampling相較之下的優點是漸進式的算圖讓你總是能看到整體畫面,也避免掉了bucket算圖算到最後一張特別慢的問題(稱為bucket syndrome)。演講中講者有提到另外一個解決bucket syndrome的方法,我們之後再談。Progressive rendering是透過控制整體GI shading rate參數,光線glossies來調整的。這個功能能完全支援分散式算圖。

毛髮算圖
因為V-Ray越來越應用在角色算圖上,也因此需要渲染毛髮。所以V-Ray 3.0針對這點進行最佳化。V-Ray 2.0已經提供了頭髮專門的Shader,這次增加對3ds Max 與 Maya的相關外掛,例如Hair & Fur,Ornatrix,HairFarm,Maya Hair/nHair,Shave & Haircut 與Yeti的支援。

V-Ray 3.0的毛髮shader針對半透明的毛髮最佳化,如此能達到柔化自然外觀的毛髮。記憶體使用與毛髮光跡追蹤也做到了動態最佳化。下圖展示了速度巨幅提昇,由原本的26.5分鐘降到2.5分鐘:




毛髮算圖最佳化,之前與之後

Vismat materials 通用材質格式
在不同應用程式之間轉換V-Ray,例如3ds Max 與 Maya之間,是一大挑戰。在混合的應用程式的工作環境中,如果能夠輕易地轉換材質那就太棒了,我們就可以轉換場景與動畫了!現今的方法非常複雜,需要繁重的.vrscene格式轉換,且只支援Max 轉 Maya,並不支援Maya轉Max。

同時,V-Ray for Rhino 與 SketchUp也有其Vismat材質,你可以上官網上Chaos Group公司提供大量的Vismat材質庫。



Vismats是以XML為架構撰寫的,不侷限於特定的應用程式,描述V-Ray材質,可以用來描述大部分的材質。目前無法支援特定軟體才有的功能。提供V-Ray特有的程序性紋理。

Vismat 材質編輯器
V-Ray 3.0中增加了對Vismat格式的支援,讓你可以輕易地在3ds Max 與 Maya之間轉換材質。Vismat材質編輯既具有以Python 和QT撰寫的UI。在所有應用程式都有相同外觀,也提供獨立的材質編輯器。目前也計畫撰寫節點式的Vismat編輯器,但還不會出現在V-Ray 3.0中。


Vertex merging 點的合併
某些間接照明(indirect illumination)的效果很難以camera based raytracing的方式進行算圖。這個東西能用在焦散效果(caustics)上。Vertex merging是個非常強大,新的GI演算法,結合了雙向路徑追蹤(bidirectional path tracing)與漸進式光子映照(progressive photon mapping)。這是有偏差的解算方式(biased solution),但隨著計算時間偏差會減小,這個方法也比photon mapping要簡單。



Vlado示範了一個例子,這個例子中茶壺封存在方塊玻璃中,只單純以焦散照明。如果沒有採用vertex merging技術,茶壺算出來非常暗,並沒有獲得穿透過玻璃的光線;但是如果我啟用了vertex merging技術,算出來的效果就更加寫實了。

V-Ray RT GPU 
V-Ray RT GPU 現在支援render elements。V-Ray RT現在能由預覽的工具變成真正的製作專案的 能夠合成的工具了。V-Ray RT GPU可以支援大部分的render elements(儘管不是全部),某個更新功能卻只在V-Ray RT GPU版本才有。 一般的V-Ray算圖elements並沒有的功能,那就是V-Ray RT GPU 支援完整的light select elements,包含了GI, light, reflections等功能。

Maya Viewport 
V-Ray RT其他的開發功能還有如V-Ray RT能用在Maya viewport renderer上面,這看起來很有用 。很不幸的是這個功能不能在3ds Max軟體上使用,因為3ds Max軟體本身的限制,3ds Max的用戶應該要向Autodesk抱怨一下。Maya的viewport模式支援V-Ray RT所有的功能,包含CPU 和 GPU rendering與分散試算圖,你還可以調整算圖解析度, 讓算圖時間減少些 (例如一半的解析度)。

請看以下展示影片(這影片可能不含有最新的軟體開發功能 因為影片是好幾個月以前的)

其他新增功能
  • 針對分散式算圖自動資產轉移。不會再掉圖了
  • Render Subset
  • Trace sets
  • Opens Shading Language 開放式Shading語言
  • Metaballs (isosurfaces)
  • 支援Deep images 與 OpenEXR 2.0 

何時會正式推出V-Ray 3.0?
準備好就會推出囉,應該是今年

推薦閱讀:


No comments: