為什么很少有游戲支持場景破壞?是因?yàn)榧夹g(shù)問題嗎?
最近很多游戲狂熱迷們正火熱討論的一個問題是:現(xiàn)在都2021年了,為啥市面上依然很少有游戲支持場景破壞呢?行業(yè)逐漸內(nèi)卷、游戲制作人員技術(shù)大幅度提升、行業(yè)水準(zhǔn)越來越高同樣也無法解決這些問題,想要實(shí)現(xiàn)整座房子被炮彈打穿已經(jīng)很容易,做一個demo也很容易,那么我們開動大腦思考一下那到底是什么原因?qū)е聝H有少部分游戲支持場景破壞呢?通常游戲公司做某件事情或者是改動游戲之前,總會思考如下三個問題:
需求原因:為什么要這么做?這么做能夠提升玩家的游戲體驗(yàn)嗎?必要嗎?
技術(shù)原因:我們有能力做到這效果嗎?
成本原因:制作這個,我們需要花多少人,多少時間,多少錢?

如果在上面三個條件都滿足的情況下,市面上還是沒有支持場景破壞的游戲脫穎而出,那無非就是目前沒有合適的承載體。
游戲能同時擁有物理效果和場景破壞固然很好,但低配置玩家?guī)缀鯖]啥多余的硬件承受能力,況且畫質(zhì)和抗鋸齒等各種效果已經(jīng)占據(jù)了整個計算壓力的90%以上。
如果這時候再加上場景破壞和物理效果,這個時候低配玩家就得淚流滿面了(music:西湖的水,我的淚......)

所以現(xiàn)在游戲的主要發(fā)展方向仍然是玩法和畫質(zhì)方面,但是也并非所有游戲都沒有可破壞部分,我們拿一款比較火熱的游戲舉例——《彩虹六號》,這款游戲不管是從畫面還是設(shè)計來看,給小編的感覺還是比較震撼的!
由于游戲設(shè)計者們考慮到玩家的思維習(xí)慣,所以游戲里就僅有小小一部分可破壞墻面用來增加玩家游戲體驗(yàn)感,畢竟誰在游戲里面誰會為了營救人質(zhì)而去炸掉房子呢?
接下來,我們一起來感受一下《彩虹六號》游戲里慢放的破壞效果:

怎么樣?大家是不是感覺很炫酷呢?
當(dāng)槍發(fā)出射擊后,墻面一瞬間爆炸出現(xiàn)的火光、煙霧以及火星子等等簡直還原了現(xiàn)實(shí)中爆炸所出現(xiàn)的一系列場景改變,甚至還出現(xiàn)了暫時性的耳鳴(簡直絕絕子,我愿稱之“身臨其境”!)
在游戲中, 通常有游戲引擎和圖形引擎,如果在游戲中增加環(huán)境破壞,那么同時又增加了另一個引擎:物理引擎。在玩家摧毀建筑物時, 物理引擎則需要重新計算每個元素在每一幀的位置。根據(jù)游戲的逼真程度, 它還需要完成:場景破壞、玩家行為、NPC 行為、要顯示的圖形、要管理的AI、音樂播放、演奏的聲音。

這樣一套物理運(yùn)算是非常消耗性能的,我們以6塊木板的箱子為例,計算木板與木板之間的碰撞反彈,6塊木板如果每塊都互相碰撞了一次,則需要計算15次;如果是100塊木板,需要計算4950次;當(dāng)然,這只是最基本的碰撞計算,其他包括重力、阻力、光線影響、不同材質(zhì)的物理特性差異等等計算過程都會呈指數(shù)級增長,而且這些計算都必須在一幀之內(nèi)完成。

然而這只是一個箱子,想想如果場景中有100個這樣的箱子呢?如果是一幢房子呢?比如在正常的游戲制作流程中,一個道具模型師最多三天可以完成,但是要做破壞的效果,工作量會提升到三十天左右,為了一個不確定能不能令玩家喜歡的點(diǎn),將開發(fā)成本大大增加,這就足以勸退很多游戲開發(fā)商了。

總結(jié)下來,游戲當(dāng)中能否在任意場景完成破壞的主要問題是在于如何在游戲這種實(shí)時性要求極高的應(yīng)用當(dāng)中完成那么多復(fù)雜的計算。算法本身是個難點(diǎn),但是更難的是性能問題,也就是這種種原因?qū)е铝舜蟛糠钟螒蚨疾恢С謭鼍捌茐摹?/p>