99国产精品欲av蜜臀,可以直接免费观看的AV网站,gogogo高清免费完整版,啊灬啊灬啊灬免费毛片

網易首頁 > 網易號 > 正文 申請入駐

《Time Ghost》的制作:如何使用 DOTS ECS 制作更為復雜的大型環境

0
分享至

基于 Unity 6 引擎制作的 demo 《Time Ghost》

開始《Time Ghost》項目時的目標之一是提升在 Unity 中構建大型戶外環境的構建標準。為了實現這一目標,我們要有處理更為復雜的場景的能力、有足夠的工具支持,同時它對引擎的核心圖形、光照、后處理、渲染和性能也提出了更高的要求。雖然我們能夠預見到 Unity 6 的圖形改進能滿足大部分需求,但工具方面仍面臨挑戰。

隨著游戲世界變得越來越復雜,高效的工具對于管理自然資產的放置和渲染變得至關重要。我們需要一個智能系統來確保環境資產的真實分布與多樣性。同時,由于計劃使用大量的植被,因此渲染方面的技術解決方案,既要具備擴展性,也要在運行時保持較高的性能

本文將分享構建《Time Ghost》場景環境中的一些做法,并解析我們所用的工作流程和工具。


生成散布數據

第一步,我們將構成環境基礎的網格導入 DCC 軟件(本例中是 Houdini)。這些網格可以是激光雷達(LiDAR)掃描、無人機掃描或在 Unity 中手動雕刻的地形。對于 Houdini,我們開發了散布分析工具。 這些工具可以根據地形屬性自動放置資產,幫助我們設計和生成細節豐富、多種多樣的連貫的逼真環境。

此外,通過采用SpeedTree 和標準攝影測量工作流程,我們還創建了高質量的植被預制件并將其散布在網格上。 散布系統允許對隨機性和密度進行微調,確保植被的自然分布和多樣性。

接下來,我們將散布數據從 Houdini 導出為點緩存/點云,使用的是 Unity 在 GitHub 上提供的VFX Toolbox 中的 Point Cache Exporter HDA 稍加改動的版本。這個工具可以保存每個散布實例的位置,同時保存其縮放、方向、顏色、年齡和健康屬性,并為散布數據中的每種模型生成一個點緩存。



Unity 集成

利用DOTS(面向數據技術棧)ECS(實體組件系統),我們可以創建包含成千上萬個實體的場景,同時保持性能穩定。這是通過實體實例化和資源分配的精細管理實現的。

每個從 Houdini 導出的點云資產實際上只是由位置、方向、縮放等信息組成的集合,可能還包括一些額外的數據(例如年齡、健康狀況、顏色等)。我們將所有 Houdini 導出的點云匯集到一個名為PointCloudFromHoudiniAsset的資源中。這個資源讀取原始點云,根據命名規則找到要與每個點云搭配的預制件,并創建數據的內部表示形式。這些數據被存儲在 PointCloudFromHoudiniAsset 中,隨后在烘焙過程中被劃分為多個空間分區,以便更快速地進行數據流式加載

下一步是在 ECS 子場景中添加一個創作組件(authoring component),名為ScatterPointCloudAuthoring。該組件將 PointCloudFromHoudiniAsset 和一些參數作為輸入數據,這些參數可用于控制何時加載和卸載數據,以及如何對點云數據進行細分。

為了高效地流式傳輸數據,我們將點云數據細分為場景區塊(scene sections),這些區塊可以單獨加載和卸載。這樣,我們就可以根據距離視角的遠近來加載和卸載不同的區塊。區塊的大小由創作組件中的 ScatterSceneSectionSize 屬性控制。

然而,這些場景區塊相對較大,如果一次性實例化所有數據,將導致 CPU 負載驟增。每個場景區塊可能包含數十萬個點,因此,這些區塊會進一步細分為更小的圖塊(tile),稱為“散布圖塊”(由創作組件中的 ScatterTileSize 屬性控制)。實例化邏輯會根據重要性規則,選擇接下來需要實例化的散布圖塊以及需要卸載的圖塊。





圖塊替身

即便可以高效地流式加載和卸載實例,我們依然面臨需要渲染大量實例的問題。許多實例的體積較小,如草叢,在遠處移動時僅覆蓋屏幕的小塊區域。因此,我們將部分散布實例烘焙為圖塊替身(tile impostor)。圖塊替身覆蓋特定區域,并模仿該區域散布實例的外觀。

數據直接從點云資產中獲取,因為我們希望控制圖塊包含的植被類型。在本例中,我們僅關注草地資產,忽略同一區域內的樹木。

圖塊替身(tile impostor)生成器從上方渲染屬于該圖塊的所有實例,生成包含每個圖塊的近似顏色、法線和深度信息的低分辨率紋理。此外,一些最重要的植物類型被選中并從側面和上方渲染到圖集上。這個圖集被所有圖塊共享,并用于為每個圖塊的低分辨率紋理數據生成細節。生成器還創建了一個由多個四角面組成的網格,代表圖塊并讓四角面朝向視角。

在運行時,我們將每個圖塊的低分辨率紋理信息與更詳細但通用的植被紋理集條目,投射到圖塊替身網格上,從而生成圖塊的近似外觀。

隨著攝像機逐漸遠離某個區域,單個實例首先會切換到較低的細節級別(LOD),最終被圖塊替身所取代。圖塊替身也有多個細節級別,隨著攝像機進一步遠離,四角面的分布會變得更為稀疏。





提升大型場景性能的替身系統

對于場景中非常遠的對象,我們使用八面體替身(octahedral imposters)。這種方法可以顯示距離攝像機較遠物體的簡化版本,從而在視覺效果與性能之間取得平衡。我們開發了一個簡單的工具,可以直接在 Unity 中生成并集成這些替身。這個工具簡化了工作流程,提供了優化性能的同時保持高視覺標準的高效方法。


植被控制系統

我們的植被控制系統提供了復雜的配置設置,可以調整風速、風的變化和頻率等環境效果,確保環境中動畫元素的真實感和性能。

植被著色器接收健康和年齡屬性,用以實現自然的顏色變化和更真實的風相應效果。比如,一株干燥的植物會更僵硬,擺動幅度小于綠色的植物。

場景中的實體也經過設計,可與角色進行逼真的交互。例如,植被會對角色的存在和移動做出動態響應。這個系統采用基于 GPU 的方法來處理與植被的交互(如碰撞),并通過簡化的彈簧物理(spring physics)來計算和模擬角色與環境元素交互的效果。



高質量的環境光照

自適應探針體積(APV)

為了獲得高質量的光照效果,場景通常需要在不同區域使用不同的光照設置。對于光線會在各種不規則表面上反彈的狹小空間,和光照相對均勻的開闊平原上,往往需要采用不同的處理方法。

Unity 6 引入了新的“自適應探針體積”功能,它會自動在最需要光照探針的地方放置探針



(注:通過可視化工具展示光照探針的位置時,可以明顯看出壕溝里的探針比平原上的更密集,可以捕捉到更為細致的光照變化。)

場景混合

場景混合(Scenario Blending)讓我們可以烘焙不同的光照設置狀態,并在這些狀態之間進行平滑過渡。

這樣就可以為同一環境的不同時間創建不同的光照場景。太陽角度和環境色的變化可以通過實時光照來實現,而烘焙的光照場景讓間接光照也能夠相匹配。


接下來的計劃

在當今先進的數字環境創建中,實現大量自然資源的自然連續分布和光照處理(無論是細致的近景還是寬廣的遠景,)都是至關重要的。基于ECS的處理方法不僅提升了畫面質量,還在數據處理和解讀方面提供了極大的靈活性,同時考慮了大型實時3D項目的性能需求。

我們已經在Unity Asset Store中發布了《Time Ghost》demo 的兩個 Unity 項目——一個是環境場景,另一個是角色。 如果你想親自體驗上述流程的效果,可以下載《Time Ghost: Environment》項目,其中包含我們用 Unity 6 為《Time Ghost》創建的一個環境場景。

示例旨在展示我們使用的技術和方法,幫助你評估是否可以將類似的思路應用到自己的項目中。

Unity 6 現已發布,點擊回顧。歡迎下載體驗 Unity 6 眾多新工具和功能,體驗更快的渲染速度與更先進的光照選項。

Unity 官方微信

第一時間了解Unity引擎動向,學習進階開發技能

每一個“在看”,都是我們前進的動力

特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

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.

相關推薦
熱點推薦
被東契奇晃到跳舞還被絕殺!戈貝爾:那個視頻被播放了無數遍

被東契奇晃到跳舞還被絕殺!戈貝爾:那個視頻被播放了無數遍

直播吧
2025-04-17 11:12:11
小兵大用!布蘭登-威廉姆斯半場三分4中3得9分4助 正負值+22

小兵大用!布蘭登-威廉姆斯半場三分4中3得9分4助 正負值+22

直播吧
2025-04-17 11:23:12
因繼父與母親決裂,韓紅母親去世三天后,最讓人擔心的事發生了

因繼父與母親決裂,韓紅母親去世三天后,最讓人擔心的事發生了

歸史
2025-04-17 10:10:36
對肺特別好的8種食物,三差五吃一次,養肺潤肺,給肺來個大掃除

對肺特別好的8種食物,三差五吃一次,養肺潤肺,給肺來個大掃除

美家家美
2025-03-12 16:42:23
許家印的勞斯萊斯車牌過期9個月,網友感慨:他的時代已結束!

許家印的勞斯萊斯車牌過期9個月,網友感慨:他的時代已結束!

小毅說事
2025-04-16 18:36:24
網傳南昌一樓盤推出4字頭起,現場出現搶房現象!可老業主憤怒了

網傳南昌一樓盤推出4字頭起,現場出現搶房現象!可老業主憤怒了

火山詩話
2025-04-17 06:22:48
節目效果拉滿!賈巴爾節目中整蠱鄭欽文,鄭欽文被嚇出表情包

節目效果拉滿!賈巴爾節目中整蠱鄭欽文,鄭欽文被嚇出表情包

直播吧
2025-04-16 11:48:03
貝佐斯未婚妻飛天緊張到臉變形,她為結婚“返廠大修”,又大變樣

貝佐斯未婚妻飛天緊張到臉變形,她為結婚“返廠大修”,又大變樣

粵語音樂噴泉
2025-04-17 03:55:54
山西訂婚案最新進展!男方判刑,家屬拒領女方返還彩禮,網友炸鍋

山西訂婚案最新進展!男方判刑,家屬拒領女方返還彩禮,網友炸鍋

井普椿的獨白
2025-04-16 23:02:09
杜鋒:我們最后縮小到幾分球 胡明軒勸架被驅離場傷害太大了

杜鋒:我們最后縮小到幾分球 胡明軒勸架被驅離場傷害太大了

狼叔評論
2025-04-16 22:49:09
意外不大了!NBA權威名記:杜蘭特和火箭雙方對合作興趣濃烈!

意外不大了!NBA權威名記:杜蘭特和火箭雙方對合作興趣濃烈!

毒舌NBA
2025-04-17 09:23:19
斯凱利更新社交媒體慶祝勝利,并曬出被呂迪格踩踏的照片

斯凱利更新社交媒體慶祝勝利,并曬出被呂迪格踩踏的照片

懂球帝
2025-04-17 06:57:14
我今天閑著沒事查了下洪金寶,嚯!這一查,真的驚到我了。

我今天閑著沒事查了下洪金寶,嚯!這一查,真的驚到我了。

小光侃娛樂
2025-04-16 20:00:11
烏克蘭60天收復第聶伯羅20%的失地!控制兩大關鍵地區

烏克蘭60天收復第聶伯羅20%的失地!控制兩大關鍵地區

項鵬飛
2025-04-16 19:26:18
“餃子”被韓國食品在美注冊外觀專利?律師提醒:中國出海企業需規避侵權風險|封面頭條

“餃子”被韓國食品在美注冊外觀專利?律師提醒:中國出海企業需規避侵權風險|封面頭條

封面新聞
2025-04-16 14:41:03
對話鄭永年:特朗普逼中國簽下新版“廣場協議”幾無可能 | 新京報專欄

對話鄭永年:特朗普逼中國簽下新版“廣場協議”幾無可能 | 新京報專欄

新京報評論
2025-04-16 22:37:28
“動蕩”的蔚來銷量爆了:展車被搶空,訂單已排到6月

“動蕩”的蔚來銷量爆了:展車被搶空,訂單已排到6月

大廠圈er
2025-04-15 10:23:42
哎媽呀,大同案一出,法官語出驚人:處女膜完整并不代表沒被強奸

哎媽呀,大同案一出,法官語出驚人:處女膜完整并不代表沒被強奸

皮蛋兒電影
2025-04-16 19:29:34
歷史唯一超級金球!費迪南德合影皇馬金球獎柜:有更牛的嗎?

歷史唯一超級金球!費迪南德合影皇馬金球獎柜:有更牛的嗎?

直播吧
2025-04-17 03:46:11
超級計算機:阿森納28.7%概率奪冠最高,巴薩21.8%最低

超級計算機:阿森納28.7%概率奪冠最高,巴薩21.8%最低

雷速體育
2025-04-17 06:15:11
2025-04-17 11:52:49
Unity incentive-icons
Unity
Unity中國官方帳戶
2284文章數 6717關注度
往期回顧 全部

科技要聞

余承東大講安全,絕口不提智駕"替你開車"

頭條要聞

27歲女子因孕吐住院2天后去世 家屬:輸液后呼吸困難

頭條要聞

27歲女子因孕吐住院2天后去世 家屬:輸液后呼吸困難

體育要聞

楊瀚森參加NBA選秀 與詹姆斯同一家經紀公司

娛樂要聞

丁真官宣“新身份”謝霆鋒眼光有多絕

財經要聞

特朗普吹牛 美國海關“打臉”

汽車要聞

炸出蘑菇云、冰封24小時 啟辰這波玩大了

態度原創

旅游
親子
本地
時尚
軍事航空

旅游要聞

熱聞|清明假期將至,熱門目的地有哪些?

親子要聞

現在的書也太超前了,書往我想不到的方向發展了

本地新聞

云游湖北 | 七仙女都愛的山水,雙峰米酒一口上頭

闊腿褲+德訓鞋=王炸CP,掌握這些技巧,解鎖初夏時尚密碼

軍事要聞

朝鮮譴責美國派遣戰略轟炸機至朝鮮半島

無障礙瀏覽 進入關懷版 主站蜘蛛池模板: 民丰县| 玉环县| 枝江市| 杭锦旗| 施秉县| 永定县| 黔西县| 会宁县| 龙门县| 六枝特区| 隆林| 金平| 宁强县| 兰州市| 沙坪坝区| 逊克县| 无极县| 卓尼县| 双城市| 文安县| 清苑县| 桐城市| 朝阳县| 广水市| 城固县| 广宗县| 泗水县| 高阳县| 都昌县| 广西| 迭部县| 连城县| 保山市| 永康市| 富源县| 武邑县| 高淳县| 绵阳市| 和田县| 任丘市| 武平县|