在物理引擎之外,《塞爾達(dá)傳說(shuō):荒野之息》還有化學(xué)引擎

《荒野之息》使用了著力于模擬真實(shí)物理的Havok引擎,但這不是全部——雖然“Havok神”依然出現(xiàn)了。

編輯或閃2017年03月10日 10時(shí)16分

Havok(念做哈勃克)是一款被廣泛使用的游戲開(kāi)發(fā)引擎,它主要用于對(duì)真實(shí)物理效果的模擬,許多展現(xiàn)、模擬了現(xiàn)實(shí)世界的游戲都有這個(gè)引擎的參與,包括《Halo 4》《上古卷軸5:天際》《輻射4》,甚至是手游《現(xiàn)代戰(zhàn)爭(zhēng)4》等等;它還給許多電影中特效提供了技術(shù)支持,比如說(shuō)《守望者》《哈利波特和鳳凰社》。

一直以來(lái)致力于表現(xiàn)真實(shí)世界的Havok,同時(shí)也是最近熱門(mén)游戲《塞爾達(dá)傳說(shuō):荒野之息》所使用的引擎。

《塞爾達(dá)傳說(shuō):荒野之息》的游戲畫(huà)面

塞爾達(dá)系列的制作人青沼英二在此前的采訪中談到他們使用了Havok作為引擎的時(shí)候,讓采訪他的主編、和他對(duì)談的對(duì)象、DQ系列的開(kāi)發(fā)者藤澤仁都很驚訝,而根據(jù)青沼本人的敘述,Havok公司的工程師們自己,也對(duì)于利用這個(gè)引擎能夠在游戲中達(dá)到的效果感到驚訝。

青沼說(shuō),“其實(shí)我們和Havok公司的人關(guān)系很好,和他們現(xiàn)場(chǎng)的工程師們討論了很久,做了不少調(diào)整。他們也覺(jué)得,“天Havok引擎居然能做到這個(gè)程度?”很驚訝?!?/div>

此時(shí)采訪人電fami nico gamer的主編甚至直接說(shuō),“這里向讀者們解釋一下,Havok是一款廣泛使用的物理引擎,但會(huì)出現(xiàn)很多讓我們?nèi)毡就婕液荏@訝的動(dòng)作,極端一點(diǎn)來(lái)說(shuō),角色們會(huì)突然跳到空中之類(lèi)的?!?/p>

“我們的東家Dwango,也就是niconico動(dòng)畫(huà)的用戶中,還有一個(gè)詞叫做‘Havok神’呢”。

舉一個(gè)例子的話,就比如說(shuō)《輻射4》中的這個(gè)飛到半空中的bug

“Havok神”這個(gè)詞來(lái)自在日本的宅圈,可以認(rèn)為是Havok被稱(chēng)作“物理演算之神”的一個(gè)簡(jiǎn)略說(shuō)法。而日本玩家們對(duì)這個(gè)神其實(shí)并沒(méi)有一直保持一種敬畏的態(tài)度。他們?nèi)绻谌粘S螒蛑泻俺觥癏avok神”這個(gè)詞的話,那一定是在游戲出現(xiàn)bug的時(shí)候。

這時(shí)候需要大喊一聲“Havok神降臨!”或者直接說(shuō),“這是Havok神在發(fā)怒”。

來(lái)自推特的Havok神之怒,圖中并不是鴕鳥(niǎo)

Havok也是開(kāi)發(fā)了這款引擎的公司的名稱(chēng)。他們位于愛(ài)爾蘭首都都柏林,在1998年設(shè)立了這家公司之后,于2015年被微軟收購(gòu)。Havok引擎是在2000年的游戲開(kāi)發(fā)者大會(huì)上首次面世的,那之后就被許多以模擬真實(shí)物理畫(huà)面的游戲所采用——塞爾達(dá)看起來(lái)和那些之前采用了Havok引擎的其他游戲都不太一樣。

不過(guò),雖然大多數(shù)已經(jīng)玩到的玩家普遍都說(shuō)bug很少,但要從目前已經(jīng)出現(xiàn)的一些bug來(lái)說(shuō),還是能夠看到Havok神的影子的。

比如這個(gè)玩家就卡在了這個(gè)地方,并且放下炸彈的話會(huì)徑直往上飛。點(diǎn)這里可以看到動(dòng)畫(huà)

寶箱的一個(gè)bug

不過(guò),《荒野之息》并不僅僅只是“單純使用”了這個(gè)引擎而已。在今年的游戲開(kāi)發(fā)者大會(huì)上,《荒野之息》的團(tuán)隊(duì)也登臺(tái)為大家介紹了他們游戲制作過(guò)程中的一些話題。根據(jù)日本媒體4GamerFami通的總結(jié)可以知道,開(kāi)發(fā)團(tuán)隊(duì)在Havok引擎的基礎(chǔ)上加上了許多新的內(nèi)容。(以下圖片來(lái)自原文配圖)

荒野之息是一款以開(kāi)放世界和自由度為主要特點(diǎn)的游戲。團(tuán)隊(duì)的目標(biāo)是,“只要玩家愿意,你甚至可以把你在游戲最初看到的一塊巖石一直搬到最終Boss面前”。

那么可想而知,開(kāi)發(fā)者們要面對(duì)復(fù)雜無(wú)比、并且具有無(wú)限可能性的各種情況,開(kāi)發(fā)難度很大。這時(shí)候技術(shù)導(dǎo)演堂田就決定要導(dǎo)入在物理法則模擬上有很高口碑的Havok引擎來(lái)開(kāi)發(fā)游戲——“因?yàn)檫@樣,我們才能自由地做出除了物理之外的部分?!?/p>

“要聰明地撒謊!”

同時(shí),技術(shù)導(dǎo)演堂田認(rèn)為,游戲中的物理法則同現(xiàn)實(shí)世界中的物理法則是不同的,而這種不同,在游戲中就被他們稱(chēng)作“騙人的物理”。使用Havok,也是為了能夠讓團(tuán)隊(duì)能夠在正確地加入物理法則之外,盡可能地“多說(shuō)謊”。

團(tuán)隊(duì)認(rèn)為,開(kāi)發(fā)者需要實(shí)現(xiàn)的可能并不是完全復(fù)原原本世界的物理性,而是一種“游戲中的物理法則”,或者說(shuō),是一種“虛假的物理法則”。

這時(shí),“如何巧妙地來(lái)通過(guò)‘說(shuō)謊’來(lái)構(gòu)建一個(gè)假象的世界,就成為我們程序員的樂(lè)趣之一?!?/p>

堂田在演講中舉出了幾個(gè)例子來(lái)說(shuō)明這種“騙人的物理”。比如說(shuō),游戲中有一個(gè)名叫Stasis的動(dòng)作可以讓時(shí)間停止。但發(fā)動(dòng)這個(gè)動(dòng)作的時(shí)候,并不是整個(gè)時(shí)空的時(shí)間都停止,只是承受這個(gè)動(dòng)作的物品處于幾秒鐘時(shí)間停止的狀態(tài),如果向它施加其他動(dòng)作,它仍然受動(dòng)作影響,并且影響會(huì)不斷積累,在時(shí)間停止結(jié)束的一瞬間爆發(fā)。

“時(shí)間停止的動(dòng)力學(xué)”

除此之外,遠(yuǎn)程控制金屬道具的動(dòng)作Magnesis讓它看起來(lái)像是一種使用了類(lèi)似磁力一樣的動(dòng)作,但這并不是磁力而是近似的另外一個(gè)東西,使得它同時(shí)具有操作性,并且也不會(huì)露餡。

而攀巖的動(dòng)作中,其實(shí)角色和巖壁之間有一個(gè)名叫Constraint的動(dòng)作,這是Havok引擎中將兩個(gè)物件相連的一種動(dòng)作,也因此,玩家同樣也可以攀爬上運(yùn)動(dòng)的物體。其他還包括比如說(shuō)在砍樹(shù)之后,砍下來(lái)的樹(shù)干會(huì)直接變成一塊木頭,也可以浮在水面上等等,這些都和現(xiàn)實(shí)中的物理不同。

在使用Havok引擎之后,塞爾達(dá)的世界中就存在了一個(gè)貫穿始終的物理法則了,這時(shí)候,開(kāi)發(fā)團(tuán)隊(duì)的工作人員就開(kāi)始有了各種想要嘗試的點(diǎn)子,包括“那些幫助角色渡過(guò)小河的鐵板,是不是也可以用來(lái)砸敵人呢?”等等。

而這也正好契合了開(kāi)放世界和自由度的游戲標(biāo)準(zhǔn)?!痘囊爸ⅰ返膱F(tuán)隊(duì)除了加上一些“騙人的物理法則”之外,相對(duì)于Havok的“物理引擎”還專(zhuān)門(mén)開(kāi)發(fā)了“化學(xué)引擎”,用來(lái)讓一些比如說(shuō)火、水等等元素和物質(zhì)的內(nèi)容能夠同其他的物體發(fā)生聯(lián)動(dòng)。

有趣的是,堂田介紹說(shuō),除了剛體力學(xué)以外的幾乎所有自然現(xiàn)象都可以通過(guò)這個(gè)化學(xué)引擎來(lái)實(shí)現(xiàn),比如說(shuō)游戲中的風(fēng)和電氣等等。這在現(xiàn)實(shí)生活中其實(shí)是物理的范疇,但在荒野之息的世界中,它變得更加簡(jiǎn)化了。

”風(fēng)元素“

《荒野之息》中的“物理引擎Havok”和“化學(xué)引擎”雙管齊下的做法讓整個(gè)開(kāi)放世界的開(kāi)發(fā)思路變得十分清晰。

堂田等技術(shù)開(kāi)發(fā)者們覺(jué)得,動(dòng)作游戲是由“沖突+移動(dòng)+狀態(tài)”來(lái)構(gòu)成的。而化學(xué)引擎就主要負(fù)責(zé)計(jì)算道具、場(chǎng)景等等的變化。如果把游戲中出現(xiàn)的具有固定實(shí)體的東西稱(chēng)作物體(material),沒(méi)有的稱(chēng)作元素(element),那么只要制定3條法則就可以幾乎實(shí)現(xiàn)所有的動(dòng)作。

這3條法則分別是,元素可以改變物體的狀態(tài)(火可以讓木頭燃燒);元素之間可以互相影響對(duì)方的狀態(tài)(水可以澆滅火);物體之間不會(huì)互相干涉狀態(tài)(木頭裝上石塊不會(huì)有什么變化)。

動(dòng)作游戲=沖突+移動(dòng)+狀態(tài)變化

火可以點(diǎn)燃樹(shù)木,元素和物質(zhì)之間會(huì)發(fā)生反應(yīng),元素和元素之間也可以,但是物質(zhì)和物質(zhì)之間不行,這是適用物理法則

所以,面對(duì)Havok神的時(shí)候,一向bug較少的任天堂給出的答案,除了給“神跡”添磚加瓦之外,依然是敬畏啊(誤)。

    1

    編輯 或閃

    kongyu@chuapp.com

    200斤的死肥宅,長(zhǎng)得超好看。

    查看更多或閃的文章
    關(guān)閉窗口