也證明了“畫質”“優化”可以兼得。
當下游戲里的天氣系統能做到多“真實”?
當一陣風從海面上吹來,帶動起輕微的浪花。岸邊的樹木枝葉顫動,原本輕輕飄落的小雨和櫻花瓣被卷起,伴隨著紛亂的發絲,打濕了主角的臉頰和衣裳。
![]()
這是育碧去年在《刺客信條影》里所交出的答卷。
至少在畫面技術層面,《影》算得上去年整個游戲行業中最被低估的作品之一——之前我很難從玩家角度拿出什么具體的例子來體現這一點,更多時候只是和身邊的人們說:“你玩一下一定能體會到。”
這幾天,育碧放出了四集短紀錄片,講解了《刺客信條影》究竟依靠著他們的自研引擎Anvil實現了哪些視效突破。像是游戲里的動態天氣系統究竟細到什么地步,也就更加具象化了。
![]()
育碧的B站官方號也正在更新這系列影片
就以前面提到的風來進一步舉例。《影》里的風有著實體碰撞體積——這本身不算特別新鮮的技術,但在Anvil的風可以在一套流體力學算法下,和場景里的其他要素形成復雜交互,會在彼此碰撞發生流向改變,從而更像是自然界里真實的風。
![]()
“風”也只是這套天氣系統的一個構成部分。實際體驗過這款游戲的玩家應該會對其中的四季變化印象深刻——隨著季節轉換,植被、河流、動物生態都會發生相應的改變,而春天的細雨、夏日的暴雨、冬夜的雨雪,畫面表現都截然不同。
![]()
Anvil也在這一代融入了育碧自家的全局實時光照,使得游戲內室外光線可以穿透門窗——室內明暗由此會隨室外光變化,出入房屋也不再像從那樣“明一下暗一下”。
![]()
除了這類比較顯性的效果,如果你在游戲里有過一些比較細致的觀察,或許會留意到即便從高處俯瞰整個城市,遠處的房屋和自然景色也保持著和近處相似的清晰度,較遠處的人與動物動作也依然流暢。
![]()
遠處的飛鳥依然保持著流暢的飛行動作,云也不是貼圖而是實時演算
在大多數游戲中,大場景里的這類細節通常會被簡化來保障游戲整體運行效果。但《影》在這方面不僅沒有進行弱化,而且優化效果也極其出色,尤其在NS2上,基本稱得上是這臺主機上目前畫面效果最好的游戲。
這同樣是基于Anvil引擎來實現的。Anvil的微多邊形功能,使得這些模型素材在游戲運行中可以僅渲染玩家所看到的那面,這樣不僅省出了算力和顯存來確保可見部分的顯示效果、避免低清遠景變高清近景時的畫面突變,美術人員也不用再去手調用于在不同距離顯示的高清和低清模型。
![]()
Anvil是育碧從第一作《刺客信條》開始搭建和運用的自研引擎,貫穿了整個系列的發展史,到如今已有差不多20年的技術積累。
在上面的記錄短片之外,我們也專訪到了Anvil引擎的技術架構師Nicolas。他向我介紹了Anvil鮮為人知的幕后發展史。
![]()
Nicolas Lopez在育碧蒙特利爾工作室中擔任渲染技術架構師
簡略來說,Anvil大致經歷過四個重要階段,即從1代到《黑旗》的初創期;在《大革命》時進行了一次大革新,應用了在當時還相當超前的全局光照和“GPU驅動”技術——這兩項如今則已成為業內標配;從《起源》開始,Anvil則開始加強用于構建超大開放世界的功能,引入了優化NPC行動的“Meta AI”、優化內存管理的“稀疏計算(sparsely computed)”等技術。
再然后,就是我們現在所看到的《影》所代表的新階段。
其引入了多項新技術,核心在于為開放世界實現更多動態效果的同時,迭代出更好的硬件優化解決方案——在當下游戲行業廣泛使用虛幻5等商業引擎的語境下,這兩者通常是彼此矛盾、需要做取舍的,所以《影》此前的表現從外部來看簡直像是運用了某種“黑科技”。
但通過上述的技術拆解,其實能發現這兩者或許真沒那么“非此即彼”,而是可以通過一些技術巧思來兼顧。尤其對于Anvil自身來說,這樣的路線也讓這次迭代顯得更加平滑——許多人一定還記得《大革命》時因為步子邁太大而導致游戲惡性Bug頻出的景象,但這次的《影》對比同等體量的游戲來說,算得上是Bug相當少的那一檔。
在過去幾年里,不少廠商放棄了自研引擎的道路,轉投商用引擎尤其是虛幻5的懷抱,也獲得了不錯的效果。像育碧這樣堅守自研引擎的反而顯得有些固執。
但現在來看,Anvil這樣的自研引擎依舊具有其特有的長尾優勢,一方面是有機會去規避“優化差”“Bug難修”等商用引擎通病,另一方面也更能體現廠商的個性,不斷強化某個玩法類型所需要的功能,最終形成一種護城河。從過往的一些發展來看,這些技術創新往往也會給整個行業帶來啟發。
![]()
盡管還沒正式公布,但《刺客信條》系列下一部即將到來的作品大概率是使用最新的Anvil引擎來開發的《刺客信條:黑旗》的重制版
當然,好技術不代表就能帶來好游戲。在更多玩家眼中,如何在敘事和玩法內容上做出更多新意,可能才是當下的育碧更迫切面對的問題。這實際也是游戲行業中另一對常見的矛盾:過于“系統化”或者說“工業化”的生產路徑促進了技術方面的領先優勢,卻也可能造成內容創意層面的匱乏。
顯然,這兩者也不應該是非此即彼的。希望育碧在這一領域也能早日再次找到自己的平衡點吧。
以下是這次采訪的完整內容,為便于閱讀做了一定調整。
游研社:Anvil引擎問世至今已有近20年了。從外界看來,它一直保持著這個名字,沒有任何版本號。我想知道在育碧內部,它這些年是否經歷過一些重大更新,甚至推翻重做?
Nicolas:我不會說Anvil經歷過“徹底重做”,因為那將是一個極其龐大的工程,但我可以把Anvil的歷史劃分為三個主要時代,而《刺客信條:影》在技術上則開啟了一個全新時代。
第一個時代是為了《刺客信條1》打造開放世界體驗而構建的。這個時代一直延續到《刺客信條3》和《黑旗》。
第二個時代是《刺客信條:大革命》。它在技術上極其超前,首次在開放世界中實現了體積全局光照,其靈感其實來源于皮克斯動畫工作室利用表面計算全局光照的技術。
《大革命》的另一個技術支柱是“GPU驅動管線”,這在當時非常超前,由GPU而不是CPU來決定屏幕上繪制什么內容。我們的同屏繪制網格實例數量因此比前作提高了10倍 。我們將網格以“簇”的形式表示,而不是單一幾何體,這種理念我們一直沿用至今,你甚至能在如今的DX12 Meshlet API中看到這種概念 。
第三個時代,是從《刺客信條:起源》開始。最大的跨越是渲染一個16x16公里的超大開放世界地形。這帶來了諸如浮點精度等編程難題,我們不得不重構動畫精度和世界坐標系。同時,由于龐大的世界無法把光照數據全部存入硬盤,我們改用了稀疏計算,不存儲空白空間的數據。
這也是我們首次引入“Meta AI”的時代,它就像即時戰略游戲一樣,在整個世界范圍內模擬系統化的AI;當角色遠離玩家視角時,他們的AI會逐步降級為一個單純在世界中游蕩的位置坐標,但依然在被模擬。這個時代延續到了《英靈殿》和《幻景》。
《刺客信條:影》代表著一個新時代的開始,帶來了大量新技術,如全局光線追蹤、微多邊形(Micro-polygon),即虛擬幾何體,可以說是我們之前GPU管線的巨大迭代、被稱為Atmos的流體天氣模擬系統、網格切割、破壞系統以及四季變換。所有這些加在一起,讓我們不僅能打造和以往一樣龐大的世界,還能實現前所未有的動態效果。
游研社:Anvil僅僅是一個面向技術和美術團隊的工具,還是一個全能型的平臺?比如,敘事策劃或音頻設計師等崗位,也會將其用于日常工作嗎?對于非技術人員來說,學習如何使用Anvil難嗎?
Nicolas:Anvil是一個包含許多工具、構建系統和編輯器的完整生產管線。我們試圖通過消除“不必要的復雜性”來讓Anvil變得盡可能容易上手 。但是,制作這類游戲本身要求極高,我們一直在突破極限,所以開發者必須時刻將“可擴展性”銘記于心,確保他們構建或使用的解決方案能適應《刺客信條》級別的規模。
它不難學,但因為它系統繁多,確實需要一點時間來適應 。我在游戲行業有20年經驗,見過很多引擎,但當我在Anvil上工作時,依然看到了許多我在其他引擎中從未見過的系統。(采訪者注:Nicolas也曾參與寒霜引擎的開發)
游研社:《影》在NS2上的表現非常驚艷,特別是考慮到在開發初期這款主機甚至還沒發售。能分享一下將Anvil用在NS2上與PC等其他平臺的最大區別是什么嗎?
Nicolas:我們的策略是,絕對不希望像過去那樣直接對引擎或數據“開分支”來適應新平臺,我們需要保證主干數據的一致性,以便兼容未來的DLC和內容 。所以我們全靠“可擴展性”來解決問題。
雖然當時新平臺還沒發售、規格不全,但我們每次構建系統時,都會確保它能從低端縮放到高端 。我們有一個叫做“平臺管理器”的系統。它允許開發者甚至在主機上直接從數據層面控制所有影響畫質和性能的屬性,從而找到壓榨硬件的最佳配方。我們也會和硬件供應商分享這些配方以進行快速排障。
考慮到NS2的架構不同于Xbox和PlayStation,我們必須特別挖掘并利用NS2上獨有的異步計算(async compute)特性,我認為我們成功做到了。
游研社:玩家以前經常拿“育碧式Bug”開玩笑,但我注意到《影》這樣一款龐大的游戲,惡性Bug卻非常少 。這多大程度上歸功于自動化系統,又有多大程度上歸功于傳統的QA和Debug?
Nicolas:很高興你注意到了這一點,因為我們在這方面確實非常努力。這款游戲其實極難進行QA測試,因為它的天氣、季節、時間、龐大世界以及多平臺多模式導致了可能性的“組合爆炸”。
我們的穩定主要得益于兩點:第一,在《影》的開發中,Anvil轉變成了一個“共享引擎”,新功能會同時部署到多個項目組,改變了以往各個團隊拿走引擎各自亂改、工作重復的情況,高度集中化提升了系統的穩定性。第二,我們個人和團隊確實投入了大量精力來確保游戲盡可能沒有Bug。
游研社:紀錄片提到Anvil帶來了很多細節提升,其中一些甚至玩家都不會注意到。在高昂的成本和有限的時間下,你們如何衡量某項技術提升是“值得”的
Nicolas:技術可以分為兩類:一是面向玩家的,比如天氣、光線,二是引擎底層管線,比如網格剔除效率,兩者必須并行發展。我們總是優先考慮能實現“創意愿景”的技術。比如在《影》中,創意總監強調“四季變換”和動態效果至關重要,為了支撐這一愿景,我們才開發了全局光追(RTGI)和Atmos模擬天氣系統。我們總是從“最終產品”倒推所需的技術。
此外,現在游戲開發周期長達數年,我們開發技術是在為整個品牌和IP的未來服務,而不僅僅是為了單款游戲 。我曾去SIGGRAPH聽過迪士尼的演講,他們在做《超能陸戰隊》(大白)時,整個技術團隊為了那部電影只專注攻克了一個功能:塑料的半透明渲染 。我就覺得,連電影工業都可以為了一個細節投入如此之大,而游戲領域要做的事情還有很多很多。
游研社:既然Anvil已經是一個高度自動化、性能強勁的成熟工具,如今也有越來越多中小型團隊嘗試制作開放世界游戲,你們有可能將Anvil向第三方開發者開放或授權嗎?
Nicolas:目前我還沒有聽說過任何相關計劃。如果未來有消息我會告訴你的,但眼下還完全沒有考慮過這件事。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.