用游戲技術(shù)快速生成,如今“建設(shè)”一座機(jī)場(chǎng)只需三天時(shí)間
半天就能重建2000平方公里城市,3天“生成”1個(gè)機(jī)場(chǎng),這些在真實(shí)世界中不可能完成的任務(wù),正在被游戲開(kāi)發(fā)者借助PCG程序化生成技術(shù),為虛擬世界帶來(lái)更多可能,并在我國(guó)首個(gè)完全自研“全動(dòng)飛行模擬機(jī)視景系統(tǒng)”中大顯身手
6月20日,2023珠海飛行安全研討會(huì)暨“南航-騰訊”航空安全與仿真研究實(shí)驗(yàn)室成立掛牌儀式在南航翔翼公司舉辦。本次大會(huì)發(fā)布了基于騰訊自研游戲引擎技術(shù)和南航虛像顯示技術(shù)共同打造的全新一代視景系統(tǒng),該成果實(shí)現(xiàn)了國(guó)產(chǎn)自研視景系統(tǒng)關(guān)鍵技術(shù)突破,完成飛行模擬機(jī)視景系統(tǒng)的代際升級(jí),為超過(guò)8萬(wàn)民航飛行員提供更高效、更安全的飛行訓(xùn)練。
作為民航飛行員訓(xùn)練的主要設(shè)備,全動(dòng)飛行模擬機(jī)以及其所搭載的視景系統(tǒng)能夠模擬飛行時(shí)所見(jiàn)景象,是影響飛行訓(xùn)練成效的最關(guān)鍵部分之一。而此次新發(fā)布的視景系統(tǒng)用騰訊自研游戲引擎技術(shù),為民航飛行員提供1:1的真飛機(jī)模擬仿真駕駛體驗(yàn)和第一視角的世界場(chǎng)景圖像渲染,首次將游戲開(kāi)發(fā)領(lǐng)域積累的資產(chǎn)制作流程和PCG技術(shù)用于航空領(lǐng)域的數(shù)據(jù)資產(chǎn)生成,為游戲科技“跨界”邁出重要一步。
創(chuàng)造大世界,離不開(kāi)制作高效率
游戲產(chǎn)業(yè)發(fā)展至今,開(kāi)放世界正在成為越來(lái)越多3A游戲的必備元素,在虛擬環(huán)境中構(gòu)建開(kāi)放且場(chǎng)景復(fù)雜多樣的大世界,如何提升樓宇、樹(shù)木、道路等同類型數(shù)字資產(chǎn)的制作效率,影響著整個(gè)游戲項(xiàng)目的開(kāi)發(fā)進(jìn)度,而提升開(kāi)放世界的資產(chǎn)制作效率,往往離不開(kāi)內(nèi)容生成技術(shù)。
事實(shí)上,PCG內(nèi)容生成技術(shù)在游戲行業(yè)已經(jīng)有5年以上的廣泛應(yīng)用,游戲開(kāi)發(fā)者通過(guò)輸入需求,并利用工具運(yùn)算生成輸出數(shù)字資產(chǎn),虛擬世界中的城市等場(chǎng)景就能自動(dòng)復(fù)現(xiàn),并按照規(guī)則分布出來(lái)。
在此次的南航視景系統(tǒng)中,民航飛行員第一視角下的世界場(chǎng)景圖像都經(jīng)過(guò)真實(shí)模擬,包括機(jī)場(chǎng)、城市等大量場(chǎng)景需要構(gòu)建,而有了PCG技術(shù)的加持,機(jī)場(chǎng)跑道的滑行道、聯(lián)絡(luò)道、標(biāo)志、標(biāo)線等元素,都可以程序化生成,制作做城市時(shí),也只用提前預(yù)定規(guī)則選定范圍,就能快速生成擴(kuò)大,告別傳統(tǒng)方式對(duì)場(chǎng)景細(xì)節(jié)逐個(gè)建模、手動(dòng)畫(huà)圖的緩慢操作,做到快速迭代。
上千平方公里城市資產(chǎn)重建,一天之內(nèi)完成
為了讓南航視景系統(tǒng)中,飛行員視野內(nèi)的景觀場(chǎng)景更加接近真實(shí),開(kāi)發(fā)團(tuán)隊(duì)重建了深圳市大概35*35公里,超過(guò)1000平方公里范圍的深圳市地景,包括了15萬(wàn)+棟建筑,25萬(wàn)件樓頂資產(chǎn)附件,同時(shí)配合約65萬(wàn)棵樹(shù)木,以及各種的地景貼圖、山川、河流、道路立交橋等,形成了整個(gè)城市的資產(chǎn)格局。
面對(duì)如此大規(guī)模的資產(chǎn),PCG程序化生成技術(shù)成為了在效率和效果上達(dá)到較好平衡的一種方式,通過(guò)輸入數(shù)據(jù)生成相應(yīng)資產(chǎn),開(kāi)發(fā)團(tuán)隊(duì)僅需大概0.5 – 1天時(shí)間,就能完成上述所有資產(chǎn)重建。
在城市資產(chǎn)生成的流程上,所輸入的高程數(shù)據(jù)還原地形地貌;地標(biāo)性的Hero建筑則通過(guò)手工制作增強(qiáng)城市的真實(shí)感;最重要的SHP數(shù)據(jù)則包括建筑信息、道路信息、水體信息等,作為還原整個(gè)城市的主要依據(jù)。
通過(guò)對(duì)SHP數(shù)據(jù)的解析,PCG技術(shù)可依照對(duì)應(yīng)信息,程序化生成建筑群、道路及周圍植被、河流湖泊等城市內(nèi)場(chǎng)景,最終把所有這些生成的數(shù)據(jù)整合到一起,就能完成了整個(gè)城市資產(chǎn)的重建。
值得一提的是,因?yàn)槟虾揭暰跋到y(tǒng)中主要為飛行視角以俯視的角度來(lái)觀看城市,因此,樓頂資產(chǎn)的擺放顯得尤為重要,對(duì)此,開(kāi)發(fā)團(tuán)隊(duì)預(yù)制了幾十種不同的屋頂資產(chǎn),并通過(guò)對(duì)這些預(yù)置模型的隨機(jī)分布來(lái)表現(xiàn)出不同建筑的不同屋頂,使俯視視角下的場(chǎng)景更加真實(shí)。
此外,在根據(jù)繪制區(qū)域隨機(jī)生成PCG建筑群時(shí),開(kāi)發(fā)團(tuán)隊(duì)也通過(guò)參考城市地圖數(shù)據(jù),提煉出5種布局模式,憑借5種不同類型的建筑群分布,再配合單體建筑的多樣性方案,促成了較好的還原效果。
定制機(jī)場(chǎng)環(huán)境生成規(guī)則,實(shí)現(xiàn)高效精細(xì)化重建
另一方面,為了讓視景系統(tǒng)能夠盡可能有效的輔助飛行員進(jìn)行模擬訓(xùn)練,最大程度上真實(shí)準(zhǔn)確的還原真實(shí)機(jī)場(chǎng)情況顯得尤為重要,但要做到對(duì)機(jī)場(chǎng)的精細(xì)化重建,就對(duì)資產(chǎn)制作的效果提出了很高要求。
根據(jù)規(guī)則來(lái)生成場(chǎng)景的PCG技術(shù)雖然提高了數(shù)字資產(chǎn)的制作效率,可真正機(jī)場(chǎng)在建設(shè)的時(shí)候,卻又并不會(huì)完完全全遵照特定的規(guī)則來(lái)搭建,在利用PCG技術(shù)的基礎(chǔ)上想要做到真實(shí)準(zhǔn)確的還原,成為了南航視景系統(tǒng)制作團(tuán)隊(duì)面臨的一大挑戰(zhàn)。
對(duì)此,制作團(tuán)隊(duì)根據(jù)對(duì)多個(gè)機(jī)場(chǎng)衛(wèi)星圖進(jìn)行分析并總結(jié)規(guī)律,自研了一套PCG的流程工具,基本覆蓋了當(dāng)今主流機(jī)場(chǎng)環(huán)境的生成規(guī)則,包括大型機(jī)場(chǎng)的多條跑道布局情況,滑行道、聯(lián)絡(luò)道、停機(jī)坪、地面標(biāo)線標(biāo)志及3D標(biāo)識(shí)等資產(chǎn)相互關(guān)聯(lián)關(guān)系等,提高資產(chǎn)生成的準(zhǔn)確度,也從另一方面縮減了資產(chǎn)的調(diào)整及修改時(shí)間,提升效率。
原本手動(dòng)的方式來(lái)制作一個(gè)大型復(fù)雜的機(jī)場(chǎng)可能要1-2個(gè)月時(shí)間,在熟練使用自研PCG工具的情況下,只需要3天即可完成資產(chǎn)的重建,快速實(shí)現(xiàn)效果迭代。
這個(gè)就是我們大概的流程圖,通過(guò)輸入相應(yīng)的數(shù)據(jù),配合參數(shù)和手工調(diào)整,就能快速生成對(duì)應(yīng)的資產(chǎn)。

結(jié)合上面的流程圖,即可以深圳寶安機(jī)場(chǎng)為例,來(lái)看看是如何通過(guò)使用我們自研的PCG工具,快速重建整個(gè)深圳機(jī)場(chǎng)資產(chǎn)。
深圳機(jī)場(chǎng)資產(chǎn)包括有:兩條飛機(jī)跑道、滑行道、停機(jī)坪、各類標(biāo)線標(biāo)識(shí)等。
跑道,滑行道,停機(jī)坪重建:
想要精確還原重建整個(gè)資產(chǎn),首先需要一個(gè)比例正確的參考圖,這里開(kāi)發(fā)團(tuán)隊(duì)開(kāi)發(fā)了背景圖生成工具,根據(jù)經(jīng)緯度信息,將準(zhǔn)備好的geotiff圖片還原成正確的比例,并將其設(shè)置為參考底圖。使得接下來(lái)重建的所有資產(chǎn),都可以以這個(gè)參考圖尺寸比例為標(biāo)準(zhǔn)來(lái)生成,保證資產(chǎn)準(zhǔn)確性和一致性。

首先,對(duì)照參考圖,將兩條跑道的曲線繪制出來(lái),或者也可以輸入跑道兩端的經(jīng)緯度信息生成曲線,跑道資產(chǎn)主要包括主體跑道、延長(zhǎng)跑道、吹坪、掉頭坪、中線、邊線、跑道號(hào)、各類輔助標(biāo)識(shí)、以及燈光系統(tǒng)等。雖然元素很多,但基本都是按照特定的規(guī)則來(lái)建造的,因此跑道的生成會(huì)相對(duì)來(lái)說(shuō)簡(jiǎn)單一些,將曲線數(shù)據(jù)輸入工具并配合參數(shù)調(diào)整,就可以快速完成深圳寶安機(jī)場(chǎng)兩條跑道的重建。

接下來(lái),將停機(jī)坪的區(qū)域?qū)φ諈⒖嫉讏D繪制出來(lái),

再通過(guò)開(kāi)發(fā)團(tuán)隊(duì)開(kāi)發(fā)的滑行道生成工具,將停機(jī)坪和跑道進(jìn)行連接,這里的生成規(guī)則會(huì)復(fù)雜一些,為了能夠和參考底圖完美匹配,需要大量的手動(dòng)編輯操作,因此,這里在工具的設(shè)計(jì)上,提供了一套非常方便交互編輯模式,再配合工具中的生成算法,就可以完美的還原真實(shí)的機(jī)場(chǎng)情況了。

標(biāo)線標(biāo)識(shí)生成:
在機(jī)場(chǎng)設(shè)計(jì)和建造中,標(biāo)線和指示標(biāo)識(shí)是非常重要的資產(chǎn),它們可以幫助飛行員和地面人員準(zhǔn)確地識(shí)別機(jī)場(chǎng)的各種設(shè)施和區(qū)域,確保機(jī)場(chǎng)運(yùn)營(yíng)的安全和高效。
然而,整個(gè)機(jī)場(chǎng)范圍內(nèi)有大量的標(biāo)線及指示標(biāo)識(shí)等資產(chǎn),標(biāo)線之間相互交錯(cuò),結(jié)構(gòu)復(fù)雜,再加上標(biāo)識(shí)種類、數(shù)量繁多,因此,想要即快速又精確地還原是一個(gè)比較大的挑戰(zhàn),
對(duì)于標(biāo)線的生成,開(kāi)發(fā)團(tuán)隊(duì)通過(guò)繪制簡(jiǎn)單的曲線輸入,根據(jù)曲線相交的類型,比如十字、T字相交等,自動(dòng)生成相交部分結(jié)構(gòu),并根據(jù)參考底圖進(jìn)行交互編輯,快速對(duì)齊。
對(duì)于標(biāo)識(shí)的生成,開(kāi)發(fā)團(tuán)隊(duì)根據(jù)標(biāo)識(shí)的類型,預(yù)制了20多種常見(jiàn)的標(biāo)識(shí),這些標(biāo)識(shí)都是根據(jù)國(guó)際標(biāo)準(zhǔn)和機(jī)場(chǎng)設(shè)計(jì)規(guī)范進(jìn)行設(shè)計(jì)和制作的,并根據(jù)他們的分布規(guī)律,進(jìn)行了分類,配合標(biāo)識(shí)的分布工具,就可以快速地將對(duì)應(yīng)的標(biāo)識(shí)分布到想要的位置。

機(jī)場(chǎng)范圍內(nèi)還存在大量的滑行道指示牌,用來(lái)指示飛機(jī)在地面上滑行時(shí)的方向和路線。它們通常包括箭頭、數(shù)字、字母和符號(hào),以幫助飛行員正確地導(dǎo)航飛機(jī)。它們對(duì)于確保飛機(jī)在地面上安全地移動(dòng)非常重要。

使用上面的這張貼圖,每個(gè)字符我們都設(shè)置一個(gè)對(duì)應(yīng)的代碼,通過(guò)uv偏移等處理,只需要輸入不同的代碼組合,就能拼出相應(yīng)的指示牌資產(chǎn),最后,再將他們擺放到正確的位置。
為了引導(dǎo)機(jī)場(chǎng)內(nèi)車輛安全行駛,會(huì)建設(shè)大量的車輛引導(dǎo)線,通常用于機(jī)場(chǎng)內(nèi)的主要道路,如連接航站樓和停機(jī)位的道路、連接不同航站樓的道路等。一般以兩車道和四車道為主,用來(lái)幫助駕駛員遵循正確的路線,確保車輛在機(jī)場(chǎng)內(nèi)安全地行駛。

slope生成與資產(chǎn)處理:
上面重建的所有資產(chǎn),都是基于高度為0的平面重建的,除此之外,還需要根據(jù)機(jī)場(chǎng)所處的地理位置,將這些資產(chǎn)適配到地形上,這里存在的問(wèn)題是地形是根據(jù)高程數(shù)據(jù)來(lái)重建的,高程數(shù)據(jù)因?yàn)榫鹊仍虿⒉皇峭耆珳?zhǔn)確的,對(duì)于像城市等區(qū)域,地形高度有些偏差是可以接受的,但對(duì)于機(jī)場(chǎng)區(qū)域,則需要絕對(duì)準(zhǔn)確。
因此,這里通過(guò)手動(dòng)編輯的方式來(lái)精確地生成一個(gè)slope平面,用來(lái)適配資產(chǎn),同時(shí)將地形的高度也和slope平面進(jìn)行匹配,通過(guò)這樣的處理,就把上面重建的所有資產(chǎn)放到了正確的海拔高度上。
而關(guān)于slope平面的生成,首先,開(kāi)發(fā)團(tuán)隊(duì)設(shè)置了一些關(guān)鍵點(diǎn),這些點(diǎn)位于機(jī)場(chǎng)資產(chǎn)的邊緣或者重要位置,例如跑道、滑行道、停機(jī)位等位置,并根據(jù)真實(shí)的海拔,手動(dòng)為每個(gè)點(diǎn)設(shè)置高度值,然后根據(jù)這些點(diǎn)的位置和高度,通過(guò)工具自動(dòng)連接生成一個(gè)slope平面,再根據(jù)生成的slope平面的布線,將資產(chǎn)切分并映射到slope平面上。

FBX資產(chǎn)導(dǎo)出:
最后,開(kāi)發(fā)團(tuán)隊(duì)將生成的全部資產(chǎn)進(jìn)行導(dǎo)出,根據(jù)預(yù)先定義的資產(chǎn)生成規(guī)范,主要分為燈光、2D、3D幾個(gè)部分進(jìn)行導(dǎo)出,隨后在每個(gè)HDA內(nèi)部,對(duì)生成的資產(chǎn)都設(shè)置好標(biāo)簽進(jìn)行分類,每個(gè)類別下再根據(jù)材質(zhì)、優(yōu)先級(jí)等屬性將其拆分為多個(gè)FBX node,方便在引擎中對(duì)燈光及材質(zhì)等進(jìn)一步的控制和調(diào)整,同時(shí)也能更好地進(jìn)行資產(chǎn)管理。

至此,深圳寶安機(jī)場(chǎng)就已經(jīng)重建完畢,當(dāng)然,這里做的是一套通用的資產(chǎn)生成工具,對(duì)于其他城市的機(jī)場(chǎng)資產(chǎn),用戶只需要更換輸入數(shù)據(jù),就能快速實(shí)現(xiàn)重建了。
以下為南航項(xiàng)目開(kāi)發(fā)團(tuán)隊(duì)使用PCG工具實(shí)現(xiàn)的其他城市機(jī)場(chǎng)的一些效果圖:

相比原本手動(dòng)方式來(lái)制作一個(gè)大型復(fù)雜機(jī)場(chǎng)場(chǎng)景,可能要1-2個(gè)月的制作耗時(shí),在熟練使用PCG工具的情況下,南航視景系統(tǒng)制作團(tuán)隊(duì)只需要3天即可完成資產(chǎn)的重建,并且符合真實(shí)機(jī)場(chǎng)的建設(shè)規(guī)則快速迭代效果,在效率和效果上達(dá)到一個(gè)很好的平衡。

結(jié)語(yǔ)
騰訊游戲與南航翔翼聯(lián)手打造全動(dòng)飛行模擬機(jī)視景系統(tǒng),為民航飛行員訓(xùn)練提供了更真實(shí)、更靈活、更安全高效的訓(xùn)練場(chǎng)景,同時(shí)也能節(jié)省約50%的生產(chǎn)成本,進(jìn)一步提升培訓(xùn)效率和品質(zhì)。
而在游戲科技的助力下,借助PCG技術(shù)也將資產(chǎn)制作速度及質(zhì)量大幅提升,讓所有可以抽象出規(guī)則的場(chǎng)景或物品,都能做成工具快速生成數(shù)字資產(chǎn),打造制作數(shù)字資產(chǎn)的“自動(dòng)化流水線”,面對(duì)未來(lái)元宇宙等場(chǎng)景構(gòu)建時(shí),也帶來(lái)了更多技術(shù)覆蓋的可能性。
— 完 —