美國時間 2009/08/04 晚上,於紐奧良(New Orleans)的 New Orleans Sheraton 飯店深處,RenderMan 開發團隊的老大 Dana Batali 正式於 Stupid RenderMan’s Tricks 2009 中,對外(某種程度上)公開發表 RPS 15.0 將於今年秋冬上市,它包含了如下幾個重大的變革:
New Texture Format: Ptex
回顧 Disney 於 2008 年的一篇技術論文:Ptex: Per-Face Texture Mapping for Production Rendering,裏頭提出一種新的儲存 texture 的檔案格式:ptex,它有如下的優點:
- polygon 或 subdivision surface 常常會有的 texture UV 的大問題沒了。
- 雖然還是一樣有 UV,但卻是 per-face 的 UV,每個 face 之間的 UV 可以有某種程度上的獨立性,間接去掉了 texture 的接縫(seamness)問題。
- 同時,因為每個 face 的 UV 是獨立的,所以可以非常方便地讓不同的 face 有不同的 UV 分佈密度。
- 最最重要的是,它的儲存結構大大降低了 texture size 與提升了 texture I/O 的時間。
- Disney 的 Brent Burley 特別指出,在拍攝 Meet the Robinson 時,有的角色一隻的 texture 就有數百 GB,對於非常重視 texture 品質的 Disney 來說,是一個大災難。
Imager Shaders
prman 總算支援 imager shader 了。它有點像是 GPU 裏頭的 pixel/fragment shader,不同的時,shader script 的長度無限制、同時 imager shader 不只可以存取每一個 pixel 的值,它同時可以是在 pixel sample 下運作,這代表有機會實作一個 pre-hinder。或是可以搭配 AOV 來實作出 multi-layer multi-pass rendering w/o occlusion! 是 pass rendering 的重要關鍵。
另一方面,可以利用 Imager 寫出很多特殊鏡頭的 shader 來,像是魚眼(fisheye)鏡頭、模擬真實鏡頭的 distortion。又或者可以把 computer vision / image processing 的演算法拿來,直接提供花樣更多的 Non-Photorealistic Rendering(NPR)出來。
Volume Rendering
提供了原生的 volumetric geometric primitives 與直接內建的 volume rendering shader api(不需要 shader TD 撰寫 ray marching),也不需要把 volume shader 細分成 internior, externior, atmosphere 這麼多複雜的樣貌了。另一方面,這也呼應了一位在 Sony Imageworks 的導演的話:The Cloud is the way to go。Volume rendering 在 production 的時代來臨了。
Subdivision Surface API
…
RenderMan Shader Language (RSL)
…
以及每一年都會提到的
Faster Raytracer
…