Shader Ball & Lit Sphere Shading

Nov 25 2007

animationsiggraph

如果,開發像上頭這張圖所呈現的視覺效果,是很容易,而且可以隨著人的藝術創造力而有不同的變化,並且使用在 3D 動畫裏頭也很順利且自然的話,那該是件多麼有趣的事…

Hairy brushes by Steve Strassmann1986 年,Steve Strassmann 在 SIGGRAPH 上發表了一篇論文 – Hairy Brushes ,目的在透過一些方法,模擬出中國國畫中的水墨畫(不過當時,他的論文裏是指日本水墨畫…但其實就是中國水墨畫嘛…這樣的情況,可以用「情何以堪」嗎?)。這個論文的發表,說不定是「看得到」的最早 NPR 論文研究了。(所以,我們可以說 Steve Strassmann 是 NPR 之父嗎?)

NPR 是 Non-Photorealistic Rendering,和電腦圖學 (Computer Graphics) 發展至今的 rendering 研究相較起來,NPR 根本是「旁枝末節」:一點兒都不重要,也沒什麼技術貢獻的玩意兒。但它卻愈來愈常出現在我們的生活中,尤其是娛樂產品…

NPR 雖然只是 CG 裏的一個小分支,而且年輕得很,但它的的研究方向與成果卻也不少,受重視的程度,不亞於那些正規研究,最明顯的例子,就是有一個專門辦來供 NPR 相關研究投稿用的 – NPAR,一個在 2003 年開始經營,至今已經 5 歲了的學術會議。SIGGRAPH 1999 那年,還因此新開了一個全力的 course,就叫 Non-Photorealistic Rendering,這個 course 的講師一流,內容由淺入深,是個非常適合入門 NPR 的素材,看完這一份 course,再去看現在的 NPR 發展,會有非常大的幫助。

NPR 的研究中,涉及到的就是這麼一些關鍵字:edge-detection, outlines, silhouette, toon-shading, frame-coherence, brush strokes, toon shading, image synthesis。所以呢,當在描述這個技術時,我喜歡用 NPR 這個說法,而不是 toon shading,因為 toon shading 或 toon shader 只是一個部分,並不是全貌。

Lit Sphere Shading – 2001 年,由 Peter-Pike J. Sloan, William Martin, Amy GoochBruce Gooch 等人提出(又是 Gooch),他們的想法是這樣的:他們發現,一個 NPR 的視覺效果,是可以透過一顆叫 lit sphere 的東西來簡單表現的:只要有人先畫出一張圖,圖裏頭是一個圓球,在上頭,假設光源的方向後,畫出想要的面貌(shading),然後再把這一顆球的光的反應,推廣到其它 3D 模型上頭,自然可以讓其它的 3D 模型也有質感類似的 NPR 效果出來。

換句話說,你可以用手畫、用 photoshop 設計、用 CG 的技術算出來再處理…這麼一顆球來,然後就可以把它套在一個 3D 模型上,看它的感覺如何,需要做什麼更進一步的調整。不過 Lit Sphere Shading 這一篇論文的重點是,怎麼讓使用者,可以從任意的一張圖中(可能是畢卡索的巨作),萃取出這麼一顆球來。

很不巧的是,在太極影音的 3D 部門,我負責開發一個短片動畫的 shader,經過一段時間後,我想出了個叫作 shader ball 的東西,然後請我們美術部門的 Piter 畫了幾顆過來,協助我開發 shader。同時,我進一步希望可以透過那顆 shader ball,來做到某種程度上的自動化 – 回歸到最初,由美術人員來決定一個 NPR 的效果應該長怎麼樣子,而不是由工程師來決定。

結果呢,這個想法依舊是老早就有人想過了,而且還是 6, 7 年以前的…真是讓人覺得洩氣,再次證明自己不是天才。shader ball 只能算是說,是個有趣的作法而已了。

1986 大事紀

comments powered by Disqus