學習 RenderMan 的一套方法
第一屆的 SIGGRAPH Asia 2008 於這個冬天,在新加坡落幕了。雖然沒有親臨現場參與到,但從多方得來的消息(第一手 + 第二手 + 第 n 手),皆透露出“與預期的有些落差“。另一個說法是「比較接近正常的學術論文樣貌」,亦即在有聲光、有話題、有商業加持等的活動,數量上都減少了,因而使得原來的 paper session 的比重就來得比較高了。因為是第一屆,所以 course 的部分有不少“入門級“的,但我特別喜愛這種 course,裏頭常常會有令人意外的東西。 由 SCAD(Savannah College of Art and Design) 的 Malcolm A. Kesson 教授所開講的 Pixar’s RenderMan ,就是個很好的「入門兼中等級」課程。Kesson 教授從事 Graphics Programming 教學(特別是與 RenderMan 有關)已經十餘年,是一位非常敬業且時時在 Pixar 官方討論板上提問題,讓人尊敬的教授。他自行維護的 fundza 已經出現在我的網站不下數次了,非常推薦。 雖然沒有機會現場收聽,倒是拿到了 course note,花了幾個晚上看完。說實在的,參與 SIGGRAPH course 是一件非常「累人」的任務,多麼累人,你只要稍稍回想一下,你那大學時期,聽課聽到有點出神,不小心跑去和周公下棋的經驗。對了,大致的感覺就是那樣。更何況是單單看 course note(pdf 檔),不過終究是看完了。 據說,偉大的天才科學家:愛因斯坦,他的研究之路是經過計劃的。他先是下了苦功把需要的技能一一學會,才開始了他的研究。換句話說,他把需要的「工具」摸熟了,才開始上工。(這也有可能是盜聽塗說,畢竟是一點兒考據都沒有的話,聽聽就好) 在這邊,提出一套學習 RenderMan(我的經驗,幾乎都來自於 Pixar’s RenderMan,但在寫這篇文章時,會盡量保持中立,把 PRMan 特有的東西給獨立出去不提)的途徑,說不定半年後我就推翻掉這個說法了,但「推翻」這件事本身就很有趣,所以還是值得試試。 What is RenderMan all about? RIB -> RSL -> front-ends (RMS/MtoR/3Delight For Maya/…) 從實作出一個 RenderMan renderer 的角度來看,它包含了三部分,分別是 RenderMan Interface Specfication (RISpec, RIB)、RenderMan Shading Language (RSL) 與 renderer 本身(ex, PRMan, 3Delight, Pixie, …)。RIB 決定了給 renderer 使用的 scene description;RSL 提供了一個幾乎無限制的語法供 shader 開發與使用;renderer 則是集前兩者然後產生結果(圖片)出來。 ...