2008年12月17日 星期三

遊戲中的特效系統

在過去,我們將遊戲中的特效,分為兩種類型。一種我們稱之為「模型特效」,基本上它就是個美術製作出來的3D模型,只是我們將它用為特效物件上。另外一種,就是「粒子系統」所呈現出來的特效。

particlesgs

過去我們在設計的時候,「粒子系統特效」交給誰來設計製作,一直是一個很困擾的問題。粒子系統沒有一個固定的3D模型,只有一堆的運算參數。程式設計師根據這些參數,去計算每個粒子隨著時間的變化,所以裡面牽涉到不少的數學運算。

程式設計師非常清楚這些參數在數學上的意義,也明瞭調整這些參數對粒子系統的影響,所以,似乎交給我們來設計各式各樣的粒子特效是個不錯的主意。

但這樣一來,這個特效就很可能不好看。例如上面那張單調的煙火特效。畢竟,程式設計師並不是美術設計師。

可是交給美術設計師來製作設計的話,我們要做的第一件事,並不是設計一個很好用的粒子系統編輯器工具,而是 -- 教他們「數學」。

不要鬧了。

所以,有一段時間,我們的粒子系統特效一直是程式設計師在製作。不過,只是做些小特效,比較炫麗、華麗的魔法招式特效,還是交給美術設計,用模型特效來做。

最近我們發現,我們的美術設計師在3dsMax這些建模工具裡,也能夠把粒子系統摸索得很熟練,呵,這是個好機會,讓我們脫離設計難看的粒子特效的好機會。

於是我們做了一些研究,修改3dsMax exporter plugin,將美術在3dsMax中設計的粒子系統輸出,取得一些參數,然後運用這些參數,在遊戲中想辦法模擬出3dsMax的粒子運算。

這麼一來,所有的魔法招式特效,都可以交給美術設計師來製作設計,甚至於,還能夠設計一個華麗的模型特效,再搭配一些粒子特效做點綴。遊戲中的特效就會變得很吸引人。

==============================================

其實,遊戲中還有第三種類型的特殊效果,是運用「Shader」所做出來的效果,例如場景光暈、光線的散射、折射、反射等等。還有像底下這張圖,在「魔獸世界」裡,掛點以後所看到的畫面。

wow_dead

這類型的特殊效果,就真的必須由程式設計師來設計了。

2 則留言:

匿名 提到...

最近我也在搞特效

我發現
程式員比較著重粒子的軌跡
而美術人員比較著重顏色和氣氛

感覺很微妙

藍斯洛 提到...

是啊,
其實美術與程式這兩種工作的基礎訓練有非常大的差異,越常跟美術設計師合作,越能夠感受到這樣的差異。