摘于:
http://games.qq.com/a/20070927/000162.htm
“不到一年以前,硬件的處理
能力還不足以讓我們動態(tài)生成
游戲中水的運動效果,”Lee Bamber(李.巴姆博)說,他是游戲創(chuàng)造者(The Game Creators)公司的創(chuàng)始人,一位有20年從業(yè)經(jīng)驗的程序員。過去的游戲中用實景動畫來表現(xiàn)火焰,現(xiàn)代游戲則著重于通過火焰的變形和粘性來表現(xiàn)動態(tài)的煙霧和焚燒效果。
1.硬件處理能力 processing power

courtesy IBM,圖片:PS3的Cell處理器
用神奇處理器重繪西斯廷教堂的天花板
問題:如果電腦的運算速度跟不上游戲指令,畫面會跳幀,徹底毀掉玩家的游戲體驗。計算能力的限制始終是游戲制作中最令人頭痛的問題。此外,它跟本文提到的其他問題都有關(guān)系,從實現(xiàn)人工智能到創(chuàng)造真實的物理引擎。
現(xiàn)狀:多核技術(shù)同時使用多個處理器或者圖形處理單元來提高計算能力,可以加速游戲的運行。但是現(xiàn)在的程序員還沒有掌握多核處理器上的編程技術(shù)——使他們無法有效地利用這項技術(shù)。(PS3的包含8個3.2GHz處理器,可惜現(xiàn)在很少有程序員掌握了相應的編程技術(shù))傳統(tǒng)的程序設計思維是如此的根深蒂固,程序員還是習慣用會計師的語言(啊!這個雨的特效消耗資源太高啦)來表述問題,并未掌握已有的工具。
未來:摩爾定律——芯片上集成的晶體管數(shù)目每兩年翻一番——意味著未來將會有更強的計算能力。(圖形處理芯片巨人Nvidia宣稱一直以超過摩爾定律的速度更新它的芯片,在不到一年的時間內(nèi)使芯片的處理能力翻倍)但是程序員的雄心總是走在硬件發(fā)展的前面,正如一位設計師指出的:“我們的能力越強,獲得的成功越大,我們期望也越大” 對更強計算能力的渴求將永遠伴隨著CPU和GPU處理能力的快速發(fā)展。
2. 水

Courtesy Sony,圖片:龍?zhí)痘⒀ǎ↙air)中,真實的水面效果讓玩家體驗到身臨其境的馭龍飛行效果。水特效是一個主要的計算難題
描繪出流動的海水
問題:數(shù)學方法已經(jīng)能奠定了計算最精細的液體流動的基礎(chǔ),比如一毫米見方以內(nèi)的水面特效。游戲必須通過所有這些細節(jié)組合成整個海洋的效果。“不到一年以前,硬件的處理能力還不足以讓我們動態(tài)生成游戲中水的運動效果,”Lee Bamber(李.巴姆博)說,他是游戲創(chuàng)造者(The Game Creators)公司的創(chuàng)始人,一位有20年從業(yè)經(jīng)驗的程序員。
現(xiàn)狀:“黏度是關(guān)鍵,”羅恩.法第奎(Ron Fedkiw)表示。羅恩是斯坦福大學計算機科學系的助理教授(associate professor),他致力于電影特效的研究,像星球大戰(zhàn)前傳三:西斯的復仇,以及現(xiàn)在的變形金剛?,F(xiàn)在他正在與工業(yè)光魔公司合作。“高黏度”——類似于固體之間的摩擦——“比較容易表現(xiàn),黏度稍微降低,表現(xiàn)會變難;而對于水,難度更大。”數(shù)學模型能夠描述水的運動,法第奎承認,但是只有超級計算機才能滿足其運算需要。
未來:游戲開發(fā)者正在試驗粒子系統(tǒng),一種由一組顆粒組合而成的系統(tǒng),所有粒子都以特定的規(guī)則對外界做出反應。然后,隨著處理器性能的慢慢地增強和算法的改進,使用湍流模型——計算物理學中模糊預測(BallPark Estimate)的等價模型——能夠繪制出更加真實的液體飛濺、氣泡和波浪效果?!狫. W.
3. 人臉

Courtesy Bioware,圖片:Bioware大作《質(zhì)量效應》中人臉的逼真程度已經(jīng)接近引起“深谷效應”的程度。
用提線木偶模仿活人
問題:分析和重現(xiàn)人類最熟悉同時也是最微妙的面部表情已經(jīng)困擾了藝術(shù)家和科學家數(shù)百年時間?,F(xiàn)在,游戲制作者為了創(chuàng)造更加可信的游戲角色,正試圖改進前人的成果。如果角色的面部過于真實,玩家會感到難以接受,這種現(xiàn)象被稱為“深谷效應”:由于人眼對熟悉的物體觀察更加細致,導致擬真的人物在極像人類的階段引起觀察者的強烈反感。“太真實的物體讓人起雞皮疙瘩,”比爾.范.伯恩解釋道,比爾是Valve的半條命2(half-life 2)的制作人員,“你會注意任何一個微小的細節(jié)(讓人不適)。”
現(xiàn)狀:Valve的開發(fā)人員希望給出一套規(guī)則,按照這套規(guī)則來產(chǎn)生游戲角色的表情,以表達真實的情感。心理學家保羅.艾克曼(Paul Ekman)和沃勒斯.佛萊森(Wallace V. Friesen)在研究解剖學和人類交流時定義了人類面部活動的分類,包括60中基本的面部活動。Valve的開發(fā)人員以此為基礎(chǔ)來構(gòu)建人類的面部表情。他們發(fā)現(xiàn),恰當?shù)难鄄炕顒訉ι杀普娴娜四樦陵P(guān)重要。“如果眼睛不對勁,人物看上去就像死人,”Valve的資深軟件工程師肯.波德維爾(Ken.Birdwell)指出。他曾經(jīng)花一年時間來研究眼球的生理結(jié)構(gòu)、學習相關(guān)的知識,比如角膜的弧度如何影響光的反射,以及為何瞳孔偏心不是4度會使人被認為是斜視。
未來:克服“深谷效應”相當困難。程序員正致力于增加人臉表情的多樣性,賦予不同部位的面部皮膚以不同的光澤(sheen of skin stretched across facial muscle)。當然,在游戲開發(fā)商鉆研心理學和仿真機器人的同時,處理器的速度必須跟上新技術(shù)的需求。
4.人工智能

Courtesy Ubisoft,圖片:游戲《刺客信條》中的行人獨立活動。發(fā)生沖突時不同的人會有不同的反應:大打出手或者膽小畏縮。
讓1000個孩子一夜之間學會獨立思考
問題:曾經(jīng),游戲中的壞蛋僅僅是毫無目的地漫游,在快要被你打死的時候才開槍射擊?,F(xiàn)在玩家對此已經(jīng)不再滿足啦,他們希望對付更狡詐的敵人,還要有可以協(xié)助他們的可靠的同伴。盡管當前的人工智能已經(jīng)復雜到能夠滿足這樣的需要,但是處理器速度限制了它們的應用。“我們只能盡量讓角色看起來聰明一些,”馬修.梅澤羅(Mathieu Mazerole)說,他是育碧《刺客信條(Assassin’s Creed)》的首席工程師。
現(xiàn)狀:賦予游戲角色像人一樣的決策能力需要使用高級的邏輯理論。頂尖的機器人工程師使用這種理論,包括決策樹、可變巡航(Mobile Navigation)和有限自動機模型。這些技術(shù)使游戲中的敵人更加智能,比如在《刺客信條》這樣的游戲里,追蹤你的敵人會形成小隊、爬樓、越過屋頂。“有時候電腦自己找到了我們都沒想過的路徑,”馬克.布萊斯納(Mark Bresner)說,他是該游戲的首席人工智能程序員。“產(chǎn)生真實的射擊偏斜效果真的很難,”尼爾.約翰遜(Neil Johnson)說,他是二戰(zhàn)游戲《戰(zhàn)火兄弟:地獄之路》的程序員。“電腦自動瞄準視線中的目標,百發(fā)百中。我們不得不讓他們每次都瞄準玩家的腳開火。只能用這種‘蹩腳’的辦法”。
未來:馬澤羅爾(Mazerole)預測下一代的人工智能將能夠獨立地與游戲中的角色進行動態(tài)的交互。“兩個‘人’走路撞在一起,正好他們脾氣都比較‘暴躁’,這時候他們應該打起來——這就是我們將來要達到的效果。”——J. W.
5.光影效果

Crvtek/EA,圖片:戰(zhàn)斗場景增加了《危機》(Crysis)這類游戲的復雜性,但是光影效果才是真正需要花大量時間和人力解決的問題。
重現(xiàn)上帝造物——要有光
問題:穿越叢林需要強健的身體——而生成逼真的叢林對游戲開發(fā)人員來說同樣是一個難題。為了生成數(shù)英里布滿濃密植被的游戲場景,第一人稱射擊游戲《危機》(Crysis)的開發(fā)商Crytek需要為不計其數(shù)的多面體添加光影效果。而且為了實時計算,開發(fā)小組必須把運算量維持在處理器能承受的范圍內(nèi)。不同于電影特效師,能夠花大量的時間繪制一幀圖片,然后由計算機在一天之內(nèi)生成最終的畫面。Crytek的首席執(zhí)行官凱渥特.耶利(Cevat Yerli)說:“通常,真實的畫面和生產(chǎn)它時間是互斥的。”
現(xiàn)狀:解決辦法是Crytek公司開發(fā)的工具Polybump2。它能將復雜的物體表面轉(zhuǎn)化成少量多面體組成集合體。此外,開發(fā)者進還提出了使畫面表現(xiàn)更加真實的新技術(shù)。“我們能夠根據(jù)光線的強度模擬人眼的活動,”耶利(Yerli)說。游戲畫面會模擬游戲角色的視覺體驗。當走進陰暗的區(qū)域,畫面會表現(xiàn)出游戲角色的適應過程。反之從暗處沖出,畫面將是一片空白,因為角色被陽光致盲。準備開火吧。
未來:Crytek已經(jīng)使更好的視覺效果稱為可能,但是特效極限受處理器運算能力的限制。隨著處理器速度的提升,游戲?qū)⒄宫F(xiàn)令人嘆為觀止的視覺效果:透過冰的光線、雨水甚至是廣闊背景中掉落的物體。
6.火焰

Courtesy D3 Publisher,圖片:《黑暗教派(Dark Sector)》這樣的游戲非常需要逼真的火焰——最難以表現(xiàn)物理真實性的效果。
用你的雙手控制空氣
問題:在游戲中表現(xiàn)火焰是一項嚴肅的問題。用程序生成火的行為跟水很像,區(qū)別在于:a) 火焰移動更快,也更復雜;和b) 火要燒毀其他東西。過去的游戲中用實景動畫來表現(xiàn)火焰,現(xiàn)代游戲則著重于通過火焰的變形和粘性來表現(xiàn)動態(tài)的煙霧和焚燒效果。
現(xiàn)狀:程序員在談火焰效果的時候,不可避免地會涉及硬件——它代表了程序員所能達到的極限。所以,當前游戲中的火焰大多的是短暫或爆炸的效果。大火熊熊燃燒的景象難以通過程序?qū)崿F(xiàn)。“我們僅僅是沒有足夠強大的處理能力來準確地表現(xiàn)它,”游戲創(chuàng)造者(Game Creator)的李.巴姆博(Lee Bamber)說。他提到近幾年圖形處理單元開始從中央處理器接管一些資源消耗極高的任務,比如生成火焰效果。他以Nvidia的Quad SLI——一種整合4顆圖形處理單元的圖像系統(tǒng)——為例子指出硬件工程師通過改進硬件來滿足程序員的需求,。
未來:斯坦福大學的羅恩.法第奎(Ron Fedikiw)已經(jīng)設計出一種算法,有助于表現(xiàn)各種火焰的變形和粘性:濃煙滾滾的汽油燃燒,紙,甚至是漂在水面上的油的燃燒等等。“未來5年內(nèi)我們將擁有更優(yōu)秀的視覺效果,”巴姆博說,“但是要真正改進火焰效果則需要更長的時間。”——J.W
7.材質(zhì)物理特性

Courtesy Lucasarts/Pixelux,圖片,使用DMM表現(xiàn)一堵墻倒塌的過程,圖像非常真實。圖中右側(cè)的戰(zhàn)士決定了引擎的特性。
預測沙子應該怎樣從破損的沙漏里漏出來
問題:僅僅讓建筑物具有真實的外觀已經(jīng)不能滿足現(xiàn)狀了,必須讓它們能夠真實地倒塌。在設計新的摩天大樓時,設計師正在思考如何改進大樓的損毀效果(已有的方法用事先設計好的大樓殘片表現(xiàn)倒塌的大樓;或者播放已經(jīng)錄制好的大樓倒塌動畫),并且實時呈現(xiàn)在游戲中。
現(xiàn)狀:Piexelux娛樂開發(fā)名為數(shù)字粒子(Digital Molecular Matter)物理引擎,可以模擬物體粉碎、破裂、扭曲和撕裂的效果。它首先將建筑物轉(zhuǎn)化為數(shù)百個微小的西面體。在模擬石塊撞擊時,射向建筑物的石塊在碰撞點替代了那里的四面體;接著,引擎根據(jù)材料的密度、強度和質(zhì)量來演算碰撞點周圍的四面體如何相互碰撞、移位,制造出受損部位的連鎖反應效果。“我們第一次仿真玻璃破碎時,把人扔向窗戶然后觀察玻璃以真實的方式變成碎片,足足搞了半小時,”Pixelux的軟件工程師維克.索哈(Vik Sohal)說。
未來:所有使用數(shù)字粒子引擎表現(xiàn)的物體都必須遵守一些列物理規(guī)律,如楊氏模數(shù),決定物體的硬度;還有泊松比,描述了氣球和蘇打水這類東西的彈性。數(shù)字粒子引擎還決定了物體的內(nèi)力如何聚集,在超過閥值之后使物體在最脆弱的位置破裂。樹長出新枝就是這樣的過程。索哈說數(shù)字粒子引擎還可以用于公路場景;它可以構(gòu)造一個300磅重的令人厭惡的線路維護員,并表現(xiàn)他鴨子一樣的姿態(tài)?!狟jorn Carey
8.真實的運動

Courtesy LucasArts,圖片:憑借Euphoria系統(tǒng),盧卡斯藝術(shù)的暴風突擊隊員可以完成真實的諂媚、蜷縮和跌倒動作。
教布娃娃學會躲閃皮球
問題:你操縱著絕地武士面對成群的暴風突擊隊,揮舞著光劍殺出重圍。但是敵人倒地的方式都一模一樣,像蜥蜴或者某種爬行動物一樣,顯然這無法讓你感受到面對敵人時的戰(zhàn)栗。原因是缺少足夠強大的計算能力實時生成圖像,另一方面許多制作人員相信錄制動畫能夠滿足需要。游戲人物的動作根本不真實。
現(xiàn)狀:軟件開發(fā)商NaturalMotion基于人工智能引擎生產(chǎn)了一種生成人物行為的引擎——Euphoria。它能讓游戲人物在面對危險、受傷時做出動態(tài)的反應。Euphoria賦予人物虛擬的人體結(jié)構(gòu)——神經(jīng)、肌肉、骨骼及重量,這些“特點”使得人物能對外界刺激產(chǎn)生不同的響應。面對飛來的箱子,有的人會躲開,另一些則會熱烈地迎接它。當箱子碰到人物,虛擬身體結(jié)構(gòu)做出相應的反應。“這都是基于一個描述人類生理結(jié)構(gòu)的算法,”海頓.布萊克曼(Haden Blackman)說,他是盧卡斯藝術(shù)公司的新作《終極力量(The Force Unleashed)》的項目經(jīng)理,這是第一款使用Euphoria的游戲。實時仿真免除了使用動畫的需要,開發(fā)者可以利用節(jié)約的內(nèi)存增加更多的視覺效果,以前這會導致人物動作呆板緩慢。最終游戲能提供多樣的游戲效果。
未來:我們需要更好的虛擬神經(jīng)系統(tǒng)。兩個暴風突擊隊員從火車上掉下來,其中一個抓住火車邊緣,另一個緊緊抓住他的腳。“這種場景將提高游戲的真實性,增加游戲的樂趣,”布萊克曼說。有了Euphoria這樣的虛擬系統(tǒng),開發(fā)商將持續(xù)推出更激動人心的游戲體驗。
9. 模擬真實世界

Courtesy Crytek/Electronic Arts,圖片:真實的測試數(shù)據(jù)被用來呈現(xiàn)極品飛車:職業(yè)賽車中的每一次起火和碰撞。
讓游戲手柄給你方向盤的感覺
問題:Pole Position的時代已經(jīng)過去了,需要消耗全部的資源來繪制汽車前臉,才勉強看起來像是一輛汽車。現(xiàn)在,程序員希望提供更多的真實體驗——擬真的武器、細膩的飛行控制——甚至是在游戲中提供快餐,好讓“你”在餓的時候填飽肚子。
現(xiàn)狀:為了達到在風中狂飆的真實效果,開發(fā)者正在研究汽車工程學。在美國藝電的《極品飛車:街頭狂飆(Need for Speed: ProStreet)》中,開發(fā)小組花費了大量的心思收集車輛的參數(shù),為了取得保時捷的相關(guān)數(shù)據(jù),他們甚至親身來到保時捷在德國的試車場收集行駛數(shù)據(jù)。借助全球定位系統(tǒng)和保時捷公司的軟件的幫助,藝電的開發(fā)小組記錄了車輛狀態(tài)(方向盤角度、剎車、離合器、剎車、閘門等)如何影響車輛的行駛(位置、速度、加速度、偏航)。這些數(shù)據(jù)直接輸入游戲,使游戲中碰撞和駕駛員的動作產(chǎn)生與實際駕駛類似的結(jié)果。
未來:我們需要精煉相互對立的經(jīng)驗。藝電同時研究了駕駛員的行為,據(jù)此設計的人工智能使游戲中的追捕者具有不同的駕駛風格,而不是千篇一律的“完美駕駛”。做比說要難:“開保時捷的可不愿意因為事故毀了愛車,”賈克斯.科納(Jacques kerner)說,他是藝電的軟件工程師,“所以我們得讓汽車工程師幫我們?nèi)〉帽匾臄?shù)據(jù)。”——D. C.
10.動作捕捉

Courtesy Crytek/Electronic Arts,圖片:真實的測試數(shù)據(jù)被用來呈現(xiàn)極品飛車:職業(yè)賽車中的每一次起火和碰撞。
Organic Motion,圖片:舊的動作捕捉系統(tǒng)需要轉(zhuǎn)著特殊的服裝,而Stage系統(tǒng)不需要這種東西。
讓電腦學會像人類一樣觀察世界
問題:通過穿著動作捕捉服來獲得人類真實動作的方法已經(jīng)過時了。這種方法需要花數(shù)小時訓練電腦準確識別人體的運動模式。但是長時間的運動會讓衣服上的捕捉器脫落。更糟的是,如果捕捉過程中某些捕捉器的信號減弱,電腦就不能有效捕捉對應人體的動作,最終會導致這部分的動作缺失。為此必須花高價雇傭工程師來重繪缺失的部分,往往還要花更多時間。
現(xiàn)狀:在Organic Motion的Stage系統(tǒng)中,攝像機錄制鏡頭前人物的動作,同時電腦實時生成捕捉到的圖像。這個系統(tǒng)不需要被觀察者攜帶捕捉器。該系統(tǒng)通過由10到14個攝像機生成的圖像合成三維數(shù)據(jù)云。電腦將相鄰的數(shù)據(jù)點三角化,進而形成人體的輪廓、動作。然后被填充的三維材質(zhì)送入動畫軟件進行進一步的處理,這一步相對簡單。“不會丟失任何細節(jié),”開發(fā)者和首席執(zhí)行官安德魯.茨諾克(Andrew Tschesnok)說,“即使人體某部分被擋住了我們?nèi)匀恢浪谀睦铩?#8221;
未來:新技術(shù)的使用使游戲變得更加真實。過去的動作捕捉系統(tǒng)過于昂貴,開發(fā)者只能先捕捉幾位主要演員的動作,然后將他們的動作移植到所有其他角色上。“現(xiàn)在我們可以令人信服地記錄每一位演員的動作”茨諾克說。使用stage這樣的系統(tǒng)來捕捉人體動作,游戲人物將跟實物沒什么區(qū)別。——B. C