果然如李明所說,當擊殺特效模塊運行在普通電腦上時,五秒的實測畫面一停一頓。如果是流暢的擊殺特效,應該能調動起玩家的情緒,最後釋放。但因為卡頓,導致觀者心焦氣躁,起了反效果,還不如沒有擊殺特效呢。
底下員工們都很沮喪,二十五天的努力下來,居然搞出了這樣令人哭笑不得的成果。
「要不然,乾脆就用動畫吧?」李明建議:「反正我帶著大家作出了這個模塊,可以很輕鬆地錄下各種角度的擊殺特效。等電腦的算力提高,再整合到遊戲裡也是一樣的。」
「不行。」王不負很堅持,「你們再放一次我看看。」
王不負仔細觀看。
第一次大卡頓,是開始時候槍口先噴出奇幻的蘑菇狀薄薄煙塵,隨後要噴出如龍般的火光,這肯定需要大量圖形算力去渲染。然後就卡住了。
第二次大卡頓是子彈碰到眉心的時候,敵人整個頭顱變得透明,可以看見內部結構。這個時候,大量電腦邏輯開始啟動。子彈的碰撞角度不同,施加在頭骨上的受力也會變化,使得每次爆頭看到的畫面都不一樣。但計算量太大,也卡住了。
第三次大卡頓,是最後的一秒。慢動作恢復成正常速度,避開噁心的畫面同時,也完整地展示了敵人被爆頭後的摸樣。依舊卡住了。
李明也捨不得,辛苦這麼久做出來的模塊,卻因為配置問題無法整合進遊戲裡。但他終究是一位遊戲製作者,很理智地勸:「我看過了,錄下一份擊殺特效只要1.5m左右大小。就算每種敵人錄上十個角度的擊殺特效,遊戲容量增加得也是可以接受的。」
「不行。」王不負依舊搖頭。
要是李明做不出實時演算,那只能用動畫來湊乎。但王不負現在看到了實時演算,比起錄動畫而言,效果簡直雲泥之別!怎能捨得?
有了實時演算,射擊角度不再是問題。每一次的擊殺特效都會有細微的差別。而且,敵人的面龐也將各有不同。玩家在瞄準時看到的臉,和擊殺特效中呈現出來敵人面孔將會是一致的。
不然,玩家費勁瞄了半天,開槍後遊戲播放動畫。然後玩家就看到一個已經死了不知多少次的人,又頂著同樣的臉再死一次。看十次百次看不膩,看一千次總該看膩了吧?
「你們再放一遍。」王不負說。他這次拿了秒表來計數。清清楚楚,原本五秒的擊殺特效,因為卡頓而延長到了八秒鐘。
引起卡頓是因為現在硬體無法達標。王不負必須所有捨棄:「前面兩秒鐘,用動畫代替。利用前兩秒鐘,預先計算後三秒的畫面。」
為了後三秒能完美呈現,只能忍痛割愛了。前兩秒是圖形的問題,除了降低畫質,沒有別的辦法可以選擇。而降低畫質的話,還不如播放動畫呢。
「好……不過我還有幾天就要回美國,可能我真的搞不完了。」李明沒什麼信心,這方案太複雜了。
「沒事,你儘量做完。」王不負給他打氣。
結果,李明還真在臨走之前的最後一天,把這個半實時演算半播放動畫的擊殺特效做了出來。
前兩秒鐘,隨著主角扣下扳機,背景全黑。暗示著主角此時將全部心神都灌注在了即將出膛的子彈上。接著,從槍口中出現極為壯觀的煙塵與火焰的特效,子彈從煙火中射出。
這是在播放錄好的動畫,在看不見的後台,其實已經開始計算數秒後的場面。
兩秒鐘的動畫播完,無縫銜接上實時演算的特效。子彈從敵人的頭蓋骨斜上方穿過,從其另一側的顎骨穿出。模擬的是遊戲中主角居高臨下狙擊敵人的場面。
為了畫面展示的是刺激而非噁心,美工們沒有製作任何腦漿的細節,隨著子彈鑽出,噴薄而出的是只有大量血液和許多破碎骨塊。
「好!」王不負心滿意足。對這樣的擊殺特效終於感到滿意了。
前兩秒聚力、中間兩秒釋放,最後一秒引爆。這五秒鐘的擊殺特效,看得連王不負都有些熱血沸騰。這還沒有音效呢,如果威軌鳴再配上音效的話,豈不爽翻天了?
以他超前十四年的眼光都能感覺到滿意,更不要說這個時代的人看到時,將會感到多麼驚艷了!