電子雜志《MCV/Develop》與Unity以及一些頂級(jí)開(kāi)發(fā)者共同探討了實(shí)時(shí)3D引擎的靈活性應(yīng)用及其未來(lái)發(fā)展。在此,我們將其中的部分內(nèi)容與各位分享。
Unity可謂是世界上使用最廣泛的游戲引擎,截至2019年底,基于Unity開(kāi)發(fā)的游戲和體驗(yàn)已經(jīng)在全球范圍內(nèi)覆蓋近30億臺(tái)設(shè)備,在過(guò)去一年內(nèi)安裝量超過(guò)370億次。從Match 3一類(lèi)的小游戲(三消休閑游戲)到主機(jī)第一人稱(chēng)射擊游戲(FPS)以及其他類(lèi)型的游戲中均可看到Unity的「身影」。
最近幾年,我們一直在深入探討Unity的新功能,像新的渲染管線(HDRP、URP)、多線程面向數(shù)據(jù)技術(shù)棧(DOTS)等。但是新的技術(shù)雖然令人興奮,但卻可能不是當(dāng)下開(kāi)發(fā)者們最需要的。
結(jié)合開(kāi)發(fā)者們的反饋,在2020年,Unity將提升引擎的易用性和靈活性作為重點(diǎn),即在關(guān)注提高當(dāng)前版本質(zhì)量的同時(shí),還考慮版本發(fā)行控制等問(wèn)題。
最明顯的改變就是Unity首次更改了版本發(fā)布周期,將技術(shù)更迭版本從每年三個(gè)更改為每年兩個(gè)。正如Unity技術(shù)負(fù)責(zé)人Brett Bibby所說(shuō):“我們正在重新打造Unity,讓它更輕便、更靈活。其中起到關(guān)鍵作用的要數(shù)Package Manager,它讓我們可以從技術(shù)更迭版本中分離出更多功能、API。這讓我們能夠提供一個(gè)更穩(wěn)定,但功能修復(fù)更為快速的產(chǎn)品,而這正是創(chuàng)作下一代作品所需要的。”
由此,長(zhǎng)期支持(LTS)版本將有一些變化:“長(zhǎng)期支持版本的基礎(chǔ)將更為牢固,保障用戶可以安心使用。此外,我們還會(huì)確保LTS版本升級(jí)更為順暢,為開(kāi)發(fā)人員提供進(jìn)行創(chuàng)新性創(chuàng)作所需的前沿技術(shù)的同時(shí),保障版本穩(wěn)定性和廣泛適用性。
有關(guān)Unity新功能和版本的問(wèn)題,我們?cè)L談了一些開(kāi)發(fā)者,他們最近發(fā)布了使用Unity制作的讓人驚嘆的游戲。但真正令我們震驚的是,他們使用引擎的靈活性和多樣性,譬如在Unity提供的核心功能基礎(chǔ)上加入了獨(dú)特的「?jìng)€(gè)人」工具。
近期,Unity技術(shù)負(fù)責(zé)人Brett Bibby和幾位全球熱門(mén)游戲的開(kāi)發(fā)者共同接受了電子雜志《MCV/Develop》的采訪,聊了聊他們對(duì)Unity技術(shù)發(fā)展的期待。
01“為創(chuàng)作者提供基礎(chǔ),實(shí)現(xiàn)開(kāi)發(fā)者夢(mèng)想”
“打造這些工具的中堅(jiān)力量的Unity團(tuán)隊(duì)制作了令人震撼的Demo,推動(dòng)了Unity引擎的發(fā)展。”Unity技術(shù)部門(mén)負(fù)責(zé)人,Brett Bibby表示“在開(kāi)發(fā)的整個(gè)過(guò)程中,這些團(tuán)隊(duì)成員提供了寶貴的反饋,確保我們能夠找到最佳的解決方案。此外,我們誠(chéng)摯的歡迎各位開(kāi)發(fā)者提出建議或反饋,共同努力讓Unity變得更好。”Unity技術(shù)部門(mén)負(fù)責(zé)人,Brett Bibby
“對(duì)于開(kāi)發(fā)者和創(chuàng)作者來(lái)說(shuō),任何零碎的時(shí)間都是寶貴的,不論是等待下載的間隙,還是更新引擎的時(shí)間都可以用來(lái)創(chuàng)作內(nèi)容、進(jìn)行編程或制作動(dòng)畫(huà)。因此,我們也在極力縮減迭代的時(shí)間,節(jié)省出來(lái)的時(shí)間即可以用于創(chuàng)作。我們也會(huì)定期與全球的開(kāi)發(fā)者溝通,傾聽(tīng)用戶的聲音。”
Brett Bibby還補(bǔ)充道:“我認(rèn)為必須指出的是,這些新的版本改進(jìn)是幫助開(kāi)發(fā)人員解決開(kāi)發(fā)困難的基礎(chǔ)技術(shù)。例如,HDRP作為眾多功能和工作流程之一,用于達(dá)成高端圖形效果。Unity作為高品質(zhì)游戲發(fā)源地,可以充分釋放社區(qū)的創(chuàng)造力和想象力。比如去年發(fā)布的一系列精美游戲,諸如《星際拓荒》,《再見(jiàn)荒野之心》,《極樂(lè)迪斯科》,《GTFO》,《Gris》和《Void Bastards》。這些基于Unity制作的游戲,皆具出色的美術(shù)設(shè)計(jì)。
2020年,我們將看到更多使用Unity引擎制作的精美游戲問(wèn)世,展現(xiàn)了Unity技術(shù)所能達(dá)到的新高度,從《Temtem》中的cel陰影樣式,到《精靈與螢火意志》中的華麗圖形,再到《廢土3》中唯美的雪花和粒子效果。這背后,是Unity開(kāi)發(fā)者在推動(dòng)高標(biāo)準(zhǔn)圖形質(zhì)量的發(fā)展。還要強(qiáng)調(diào)的一點(diǎn)是,所有這些都與我們游戲開(kāi)發(fā)本質(zhì)的理念息息相關(guān)。我們將游戲開(kāi)發(fā)技術(shù)視為下一個(gè)技術(shù)創(chuàng)新浪潮的基礎(chǔ)。我們?yōu)橛螒蜷_(kāi)發(fā)者使用的引擎所做的改進(jìn)與其他現(xiàn)實(shí)世界的體驗(yàn)密不可分,像設(shè)計(jì)汽車(chē)、構(gòu)建橋梁的方式等。所有這些就是要為創(chuàng)作者們提供一個(gè)基礎(chǔ),以有凝聚力的、易用的和可擴(kuò)展的方式串聯(lián)起開(kāi)發(fā)者們的夢(mèng)想。”
02“Unity可以幫助我們真正快速地進(jìn)行原型制作”
"5月將迎來(lái)10周年慶的Madfinger Games,從公司成立以來(lái)就一直使用Unity引擎開(kāi)發(fā)游戲。當(dāng)前,就剛剛發(fā)布的游戲《暗影之槍?zhuān)簯?zhàn)爭(zhēng)游戲》,我們與Unity正在進(jìn)行一系列的合作。"Madfinger Games首席技術(shù)官M(fèi)iroslav Ondrus表示。Madfinger Games首席技術(shù)官M(fèi)iroslav Ondrus
“我們已經(jīng)在游戲中使用的,或計(jì)劃后續(xù)應(yīng)用的一些Unity關(guān)鍵技術(shù)和服務(wù)包括:
1、ML Agents:在游戲中訓(xùn)練人工智能(AI)隊(duì)友
2、Matchmaker:將游戲中的玩家進(jìn)行精準(zhǔn)匹配,優(yōu)化體驗(yàn)
3、Multiplay:覆蓋世界主要地區(qū)的服務(wù)器托管服務(wù),讓玩家暢所欲玩
4、Vivox:跨平臺(tái)語(yǔ)音通訊,并提供語(yǔ)音和文字相互轉(zhuǎn)換的無(wú)障礙交流
5、Unity Ads:增加開(kāi)發(fā)者游戲收入并提升用戶參與度
Unity可以幫助我們真正快速地進(jìn)行原型制作。作為早期的客戶,我們目前使用的是2019.2,事實(shí)上,Unity提供的每個(gè)新版本,我們都使用過(guò)。
以Unity Connected Games為例,盡管這個(gè)新的Multiplayer/Network還在開(kāi)發(fā)中,但是Unity提供的整體合作方式對(duì)我們來(lái)說(shuō)是很棒的體驗(yàn)。
我們喜歡做很多自己的東西,很高興Unity能夠讓我們做到這一點(diǎn)。另一個(gè)比較喜歡的工具就是Unity Hub,對(duì)我們這樣同時(shí)使用幾個(gè)不同版本開(kāi)發(fā)多個(gè)項(xiàng)目的開(kāi)發(fā)者來(lái)說(shuō)非常有幫助。我們還很期待DOTS,因?yàn)槲覀冎饕_(kāi)發(fā)一些高性能的項(xiàng)目,這對(duì)我們來(lái)說(shuō)非常有幫助。
我們與Unity有著非常緊密的合作。他們?yōu)槲覀兲峁?qiáng)大的支持和專(zhuān)屬溝通渠道,最重要的是他們會(huì)聆聽(tīng)和接受我們的反饋。無(wú)法想象使用其他工具會(huì)怎樣,Unity一直在幫助我們實(shí)現(xiàn)創(chuàng)新和打造想要制作的游戲?!?/span>
03“我們最看重的是引擎的穩(wěn)定性”
Blu Manchu創(chuàng)始人Jonathan Chey采訪時(shí)說(shuō):“最初,我們使用Unity構(gòu)建《Void Bastards》,因?yàn)槲覀冋J(rèn)為這是最好的原型制作工具?!盝onathan Chey,Blu Manchu創(chuàng)始人
“對(duì)于引擎,我們比較看重的是穩(wěn)定性,工具不一定要具備前沿的功能,所以對(duì)于更換Unity版本,我們會(huì)比較謹(jǐn)慎。多年的開(kāi)發(fā)過(guò)程中,我們只更新過(guò)幾次版本,最終是在使用Unity 2017的時(shí)候發(fā)布了游戲,盡管當(dāng)時(shí)2018系列的版本已經(jīng)出來(lái)了。具體來(lái)說(shuō),最開(kāi)始,我們使用的是Unity 5,中途換到了2017,最后使用2017LTS版發(fā)布了游戲。
我們使用的是非常標(biāo)準(zhǔn)的渲染管線,包括自定義的著色器和一些光照技巧。對(duì)于后來(lái)添加到Unity中的功能,我們可能沒(méi)有用到的一個(gè)大型功能就是嵌套預(yù)制件。但當(dāng)時(shí)我們自己開(kāi)發(fā)了一個(gè)簡(jiǎn)單的系統(tǒng),用來(lái)滿足我們的需求。很高興Unity引擎現(xiàn)在支持這個(gè)功能。
對(duì)于我們來(lái)說(shuō),Unity是一款非常不錯(cuò)的工具。URP(Universal Render Pipeline)是一項(xiàng)重大改進(jìn),如果制作《Void Bastards》的時(shí)候能使用上URP這張更為靈活的新通用渲染管線就更好了。但我們的整體策略還是使用穩(wěn)定性更好的工具,而不是冒險(xiǎn)采用很可能不那么穩(wěn)定的新功能?!?/span>
04“小團(tuán)隊(duì)使用Unity也能制作出高品質(zhì)游戲”
“發(fā)布《GTFO》的過(guò)程在我們游戲開(kāi)發(fā)生涯(我們的團(tuán)隊(duì)成員大多擁有15-20年以上的專(zhuān)業(yè)游戲開(kāi)發(fā)人員經(jīng)驗(yàn))中可以說(shuō)是最順利的。直到現(xiàn)在,這款游戲仍然處于“搶先體驗(yàn)”的狀態(tài)。我們的成功主要?dú)w功于Unity,它的Profiler分析器和“崩潰和異?!碧幚砗蠖?,讓我們能夠全面了解和掌控游戲!Unity數(shù)據(jù)分析工具真的太好用了?!?0 Chambers Collective游戲工作室作曲家、聲音設(shè)計(jì)師和社區(qū)經(jīng)理Simon Viklund表示。
“此外,Unity引擎在制作原型或快速測(cè)試上也具備卓越的能力。使用Unity后,大大縮短了從概念形成到實(shí)際測(cè)試的時(shí)間,這對(duì)制作《GTFO》的很多核心功能起到了重要作用。我們將獨(dú)立的原型設(shè)計(jì)環(huán)境和Unity資源商店的資源占位系統(tǒng)整合起來(lái),創(chuàng)建了一個(gè)模型項(xiàng)目,其中的系統(tǒng)可以在需要時(shí)替換為所需的內(nèi)容。因此,在開(kāi)發(fā)《GTFO》的過(guò)程中,我們總能優(yōu)先處理與生產(chǎn)力和工作流相關(guān)的內(nèi)容。Unity讓制作開(kāi)發(fā)團(tuán)隊(duì)在內(nèi)部使用的工具變得非常簡(jiǎn)單,也讓10 Chambers能夠?yàn)椤禛TFO》不斷產(chǎn)出新內(nèi)容。《GTFO》證明,小團(tuán)隊(duì)使用Unity也能制作出高品質(zhì)游戲?!?/span>
05“可以快速將自制功能整合到編輯器,讓團(tuán)隊(duì)輕松使用”
“我們現(xiàn)在使用的是Unity 2017.4,但是在幾年前項(xiàng)目開(kāi)始時(shí)用的還是Unity 4?!缎请H拓荒》從很多方面來(lái)說(shuō)都是個(gè)超常規(guī)的游戲,需要我們用不平常的方法來(lái)使用Unity的很多功能,還要根據(jù)生產(chǎn)和制作需求制作許多工具。
MobiusDigital 技術(shù)美術(shù)師 LoganVer Hoef:在制作中我們遇到最提心吊膽的時(shí)候是從Unity 4到5的轉(zhuǎn)換,因?yàn)镻hysX并不再有剛體上的凹面碰撞體(concave colliders)。游戲中所有的對(duì)象,大到太陽(yáng)、星球,小到棉花糖都是剛體,我們需要自行重寫(xiě)物理集成功能,讓對(duì)象能兼容新引擎、性能可以穩(wěn)定。在開(kāi)發(fā)《星際拓荒》時(shí),我們制作了大量獨(dú)家的工具。包括自動(dòng)讓對(duì)象貼合到表面、與局部重力場(chǎng)相適應(yīng)的場(chǎng)景變換處理器,將枝葉和其它細(xì)節(jié)“貼到”不規(guī)則表面上的工具,有專(zhuān)門(mén)腳本可將拼裝后的地形烘焙成簡(jiǎn)潔、優(yōu)化好的最終成果,有一個(gè)Unity內(nèi)的編輯器專(zhuān)用于星空的設(shè)計(jì)和手動(dòng)制作,另外有專(zhuān)門(mén)的工具可根據(jù)在各個(gè)世界找到的外星紋理生成獨(dú)特的資源。最后,有一個(gè)能快速發(fā)布PC、Xbox One和PlayStation 4游戲版本的管線。
使用Unity的優(yōu)點(diǎn)非常明顯,我們可以快速地將所有自制功能整合到編輯器中,讓整個(gè)團(tuán)隊(duì)都能輕松使用。這樣一來(lái),小團(tuán)隊(duì)也能制作出一個(gè)大型的游戲。引擎部分內(nèi)置的工具,如Profiler分析器和Frame Debugger幀調(diào)試器在產(chǎn)出游戲的過(guò)程中作用巨大,能滿足我們的大部分需求。這兩個(gè)工具幫助我們了解到了游戲內(nèi)部的運(yùn)作,不僅能用于調(diào)試代碼、解決性能問(wèn)題,還能幫助我們寫(xiě)出更好的代碼。
Unity的其它工具并不能用在《星際拓荒》中,工具要么假定世界中的幾何形不會(huì)移動(dòng)(比如光照貼圖、遮罩烘焙),要么假定游戲的舞臺(tái)是一個(gè)平面(terrain地形),有些也并不完全支持我們正使用的Unity版本(可編程渲染管線、Burst Compiler、DOTS等等)。這些缺失的功能并沒(méi)有成為很大的障礙,因?yàn)槲覀兊匿秩?、?nèi)存分配和性能優(yōu)化都是通過(guò)修改Unity現(xiàn)有系統(tǒng)或使用自己的方案解決的。我個(gè)人在開(kāi)發(fā)中最期待的功能是可編程渲染管線,我可以用它給《星際拓荒》加上些更符合風(fēng)格的剔除和陰影渲染。但是開(kāi)發(fā)時(shí)重新編寫(xiě)整個(gè)渲染、新推出一個(gè)(游戲)大版本不是很明智?!?/span>