Shader Ball & Lit Sphere Shading

Nov 25 2007

animationsiggraph

shading sphere

如果,開發像上頭這張圖所呈現的視覺效果,是很容易,而且可以隨著人的藝術創造力而有不同的變化,並且使用在 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 效果出來。

Rendered David model and the corresponding lit spheres

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

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

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

1986 大事紀

comments powered by Disqus