RenderMan 20的新功能

  • 22
  •  
  •  

Pixar這次發布RenderMan 20的版本,主要還是針對在RenderMan的RIS架構上作進一步的調整與更新,將Raytracing的流程調整得更順暢。其中主要的部份就是在post-processing中加入了denoise的機制,讓Raytracing的時產生無雜點(noise free)的影像可以更為快速。還有視覺化的Visualizer Integrator提供產生出幾何資訊視覺化的圖像,供製作者調整render效率最佳化或為場景偵測錯誤(debuging)。

新的Denoise流程

在Raytracing的流程中,ray sample數量一直決定影像品質的重要因素,不管現在任何renderer,都脫離不了這個原則,所以有各式各樣的Sampling的方法出來,包含Importance sampling(IS),Multiple Importance Sampling(MIS),讓sample數量不會增加但是可以有效的分佈在重點,但是在sample不足的部分,就會有noise產生。noise要被消除,有兩種方式,一種是用大量的運算量去解,也就是倍增ray sample的數量,運算時間會隨著Sample數量而增加。另一種則是使用影像處理的方法,使用Denoise的filter做Post Process,這時候可以在noise數量有限的狀況下做快速有效的消除,消除的效率與效果也跟所使用的演算法有所差異。

RenderMan的新的Denoise的流程是在Post Process的時候使用Denoise的filter做Cross-frame的處理。這個技術其實是由Disney Research在製作Big Hero 6的時候所開發,是Hyperion的流程的一部分,用來加速Hyperion Render時間。這個技術也會應用在Pixar的新片Finding Dory上。

使用denoise可以快速用較少的sample的產生影像

使用denoise可以快速用較少的sample的產生影像

Denoise可以處理所有物件的motion blur, depth of field

Denoise可以處理所有物件的motion blur, depth of field

一般Raytracing的Renderer也都會有noise產生,像是Arnold或是Vray,通常也會到Nuke之類的合成軟體去做Denoise的處理,像是使用Neatvideo的denoise filter,但是這種只針對影像處理的方式對於細節會有較多的遺失。

RenderMan的Denoiser會在pre-denoise前產生出額外的channel,來讓Denoise的過濾器可以針對需要的細節作保留,並可以跨越多個Frame做偵測(cross-frame),以RenderMan的文件看起來,處理一張1920×1080的影像約會花費2到4分鐘左右,且預先產生出來的給Denoiser處理的原始圖檔也比原本圖檔大的許多。

Visualizer Integrator

每一個Renderer都需要一些視覺化的方法來偵測幾何元件的狀態,RenderMan提供了新的Visualizer Integrator,用於做場景狀態的視覺化,像是UV, normal, wireframe, surface parameterization, camera position等等,可以在Rendering時提供即時的回應。大多的renderer都會有對應的Utility Shader供使用者來針對場景的狀態做最佳化與偵錯,提升rendering的效率。

RenderMan20_Visualizer_Integrator

Marschner Hair

RenderMan使用特製的RIS的給Hair與Fur的Bxdf Shader稱為PxrMarschnerHair,包含四個Specular的components,還有獨特的Back scatter的控制,來控制更為寫實的結果。

"Character tests with Marschner Hair” © Disney/Pixar

“Character tests with Marschner Hair” © Disney/Pixar


Hair Shader包含了

Physical Camera

新的Physical Camera Model提供了模擬真實世界的效果,支援傳統的RenderMan的perspective camera所有設定,包含motion blur與bokeh。
RenderMan20_pxrcamera

Intuitive Holdout Workflow

這個是在Interactive Rendering時取出Reflection與Shadow,用來與實拍背景的製作流程,類似於Maya的Background shader。在RIS中,holdout shader內部實作了LPE(Light Path Expression),不過現在只支援PxrPathTracer的integrator。
詳細可以參考文件Holdout Workflow

Intuitive Holdout Workflow

Intuitive Holdout Workflow

New Lights, Light Localization, & APIs

新的RenderMan 20加強了RIS的light workflow,並加入了新的streamlined light shaders,包含友善的Daylight Shader,新的Light localization模式,可以在多個direct light時候降低noise,還有提供新的API來提供製作light filter的外掛。

加入新的RIS使用的AreaLight Source Shaders,PxrStdAreaLight, PxrStdEnvDayLight, 與 PxrStdEnvMapLight

New Daylight Shader

New Daylight Shader

Volumes & Maya Fluids

RenderMan 20加強了RIS模式下的volume rendering的效率,包含重疊(overlap)的volume,varying density, albedo等等,可以達到物理正確(physically accurate)的結果。另外RenderMan for Maya也在RIS模式下支援Maya Fluid。支援在volume加入equiangular importance sampling。

像是使用複雜的field function的volume,像是OpenVDB,render速度提升了兩倍。

RenderMan 20's Overlapping Volumes

RenderMan 20’s Overlapping Volumes


詳細資訊

  • What’s new in RenderMan 20?
  • RenderMan 20 Release Notes
  • indigo

    電腦動畫工作者,在業界打混十餘年,喜好SGI骨董電腦,分享新技術,動畫流程開發。

    Comments are closed.