整理 / 王丹
在近日舉辦的 2023 游戲開發者大會(Game Developers Conference)上,騰訊 AI Lab 發表了題為《AI Enhanced Procedural City Generation》的演講,提出自研的 3D 虛擬場景自動生成解決方案,幫助游戲開發者以更低成本創造風格多樣、貼近現實的虛擬城市,提升 3D 虛擬場景的生產效率。
【資料圖】
《AI Enhanced Procedural City Generation》效果展示
會上,騰訊展示了使用 AI 從零開始迅速搭建一座 3D 虛擬城市的過程,所建虛擬城市面積達到 25 平方公里,包含 130 千米路網、 4416 棟建筑以及超過 38 萬個室內映射。這樣一座大規模城市的 " 構建 ",過去往往需要多名美術師以年為單位的時間才能完成,而結合 AI 只需要數周。
團隊重點分享了城市布局生成、建筑外觀生成、室內映射生成三大核心能力,以下為具體介紹。
01
城市布局生成
城市布局的真實感與多樣化,主要來源于兩方面:道路布局和建筑布局。
第一步,創造真實感的道路布局。現實中的城市路網復雜多樣,布局疏密彎曲,且不少城市獨具風格。傳統程序化生成的路網通常橫平豎直、風格單一,要實現不同城市風格必須手動設計和反復修改,耗時至少一周。
騰訊 AI Lab 的解決方案,是讓 AI 學習現實世界路網,再自動創造新道路,不僅生成結果更貼近現實,且操作簡便高效:用戶只需要輸入城市主干道和海岸線,模型在 1 分鐘內即可填充合理、多樣的路網細節。同時,工具支持實時修改輸入,快速生成不同變體;也可在生成結果上進行細節微調,得到更符合需求的路網。整個過程僅需不到 30 分鐘,相比手動設計效率提升近 100 倍。
調整輸入(左)快速生成不同路網(右)
具體到技術實現,首先是數據的準備,包括數據的提取、篩選、裁剪及繪制。然后,訓練一個擴散模型來學習這些數據的規律,得到不同城市風格的路網生成模型,最后將該模型嵌入到路網生產管線中。
路網生成模型
第二步,在路網基礎上實現多樣化的建筑布局。現有的程序化生成技術,同樣只能生成風格有限的建筑輪廓,且建筑排布規律單一,實現多樣性仍要依賴手工設計。
為解決以上問題,騰訊 AI Lab 基于大量真實建筑的輪廓數據及建筑排布信息,通過生成技術學習數據中的規律,從而生成大量真實多樣且符合現實世界規律的建筑輪廓及建筑排布,最后把這些生成的建筑單元填充到路網中,從而完成建筑布局的制作。以演講展示的 demo 為例,操作者在路網基礎上,用 10 分鐘就完成了這一過程。
多樣化建筑布局
02
建筑外觀生成
完成城市布局生成后,下一步是給建筑設計獨特的外觀。目前常用的程序化生成管線包含以下步驟:收集圖片、定義建筑拆解組合方式、準備 3D 素材庫、參考照片制作獨特建筑、已有建筑隨機組合出更多變體、增加裝飾。其中主要效率瓶頸在于參考照片制作單個獨特建筑,所以通常只會制作少量獨特建筑,而依賴隨機組合產生的多樣性較為有限,容易讓生成的場景產生重復感。
騰訊 AI Lab 的解決方案將 AI 與程序化生成結合,加速了 2D 照片到 3D 建筑的制作過程,將單個獨特建筑的制作時間降低至 17.5 分鐘,使低成本、高效率生成大量多樣化建筑外觀成為可能。同時,借助自研的圖像生成能力,批量生成大量外觀獨特的 2D 建筑照片,提升了建筑外觀的豐富度。
靜態圖為 AI 生成的 2D 照片,動態圖為基于照片生成的 3D 建筑
通過單張 2D 照片生成 3D 建筑,其難點是對 3D 信息的準確估計。結合建筑的結構特點,騰訊 AI Lab 創新地提出合理的先驗假設,有效解決了從 2D 照片提取 3D 信息的難題,較好地實現了從單張照片提取 3D 建筑的立面結構和表觀細節(如凸起的陽臺、墻面凹凸等)。
從輸入照片中提取建筑立面結構和表觀細節
然后,將照片中檢測到的各個單元,如窗戶和陽臺,自動映射到預先準備好的 3D 素材,以及將墻面映射到預先準備好的材質。以上提取的信息接入程序化管線即可完成圖片到 3D 建筑的生成。
將照片中檢測到的單元映射到 3D 素材
對于圖像中不可見的部分(如房頂)和易遮擋的部分(如底層),騰訊 AI Lab 通過程序化管線補全得到了完整建筑。基于以上管線他們制作了 157 棟獨特建筑,借助這些豐富的建筑立面資產,即可變化出數以千計的建筑外觀。
批量生成建筑立面
03
室內映射生成
為了讓城市更具真實感,通常會增加建筑窗戶上的室內效果。實現的第一步是構建虛擬房間,騰訊 AI Lab 的方法是將現實中的房間拍照重建。相比于傳統美術建模,可以直接獲取現實房間的豐富內容和細節,提高制作效率。
具體步驟包括,給一個房間拍攝多張連續照片,估計相機位姿,訓練 NeRF 模型,合成新視角圖片作為后續材質制作的輸入。
室內映射生成步驟
考慮游戲運行性能,騰訊 AI Lab 基于 NeRF 輸出的給定視角的顏色圖和深度圖,制作內部映射材質實現偽三維效果。相比于業內常見的兩視圖方案(下圖左),騰訊 AI Lab 采用三視圖方案(下圖右),顯著減少渲染效果中的拖影,同時兼顧性能。
最后,用程序化 UV 計算,將這些 " 偽 3D" 房間填充到之前生成好的建筑外墻上,城市里即充滿了各式各樣的房間。
程序化 UV 計算步驟
增加室內映射后的建筑效果
基于以上技術,真實感虛擬城市所需要的多樣化城市布局、多風格城市建筑等核心要素已基本具備。然后,借助程序化生成,完成路面、植被等標準元素,再把所有元素轉移至游戲引擎中,增加動態變化天氣、車流與行人等,一個活靈活現的虛擬城市輕松落成。
騰訊 AI Lab 表示,團隊已在 AI 與游戲應用的結合上取得多項成果,包括運用 AI 進行游戲平衡性測試、游戲新手教學、關卡生成等。未來面向游戲行業,騰訊 AI Lab 將聚焦 AI Bot 與 AIGC 兩大方向,探索 AI 與游戲產業的深度融合,覆蓋從游戲研發到運營的全鏈路 AI 解決方案,助力游戲產業發展。
游戲葡萄招聘內容編輯,
頭條 23-03-29
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-28
頭條 23-03-27
頭條 23-03-27
頭條 23-03-27
頭條 23-03-27
頭條 23-03-27
頭條 23-03-27
頭條 23-03-27