Unite Shanghai 2024 技術專場 | Unity 6 及未來規劃:Unity 引擎和服務路線圖
在 2024 年 7 月 24 日的 Unite Shanghai 2024 技術專場演講中,Unity 高級技術產品經理 Jeff Riesenmy 帶來演講 Unity 6 and Beyond: A Roadmap of Unity Engine and Services。作爲本次 Unite 首場專題演講,他介紹了 Unity 引擎的最新進展及其配套的工具和服務,幫助中國開發者製作出精美、沉浸感十足的遊戲,不斷給玩家帶來驚喜。本文爲演講內容全文翻譯。
大家好, 非常感謝今天大家的到來。我非常高興能夠和大家聊聊 Unity 6 的路線圖計劃,並稍微展望一下未來的內容。在我們開始之前,先請大家看一下我們的安全港聲明。本場演講包含了我們的未來計劃,所以請不要僅僅基於這些未來計劃做出購買決策,因爲這些計劃隨時可能會發生變化。
我是 Jeff Risenmy, 負責 Unity 引擎內容管線的產品經理。我很高興能在這裡介紹 Unity 引擎 2024 年的路線圖,並稍微預覽一下 2025 年及之後的一些內容。
在我們深入討論之前, 先來看看最近發生了什麼。我們去年發佈了 Unity 2022 LTS 版本,並且這個最新版本的採用情況非常好。截至 2024 年 6 月,超過 65% 的活躍項目都是在 Unity 2022 LTS 中完成的。並且令人欣慰的是,隨着項目數量的增加,我們也大大提高了引擎的質量。與以前的版本相比,我們發現隨着時間的推移,報告的問題越來越少。我們將繼續每兩週發佈一個新版本,並將在未來一段時間內爲生產中使用的 Unity 2022 LTS 提供支持,確保創作者有信心繼續構建他們的項目,直至項目發佈。
將目光轉向 Unity 6,我們將在編輯器和運行時中更新或添加了 50 多項主要功能,並在編輯器中進行數百項小的改進。Unity 6 預覽版已於 5 月 1 日發佈,創作者們將有機會親身體驗我們今天要與大家分享的大部分內容。
看到像你們這樣的創作者展現了這麼多不同的視覺風格、遊戲類型和平臺,真的非常令人驚歎,我們真的很期待大家接下來的作品。
Unite Shanghai 2024 Made With Unity 遊戲大賞
創建沉浸式世界
在過去的七年中,我們一直在逐步構建新一代的渲染技術,而你們中的大多數人可能對這些技術並不陌生。首先是可編程渲染管線(SRP),在 Unity 2022 LTS 和 Unity 6 中,我們一方面將重點放在整合 SRP 的通用功能上,性能工具、可擴展性、着色器和視覺特效製作工具,以及跨平臺的視覺保真度。
與此同時,我們還努力強化每條渲染管線的獨特價值。對於通用渲染管線(URP),這意味着移動優化、定製化,以及 2D 和 VR 渲染。對於高清渲染管線(HDRP),這意味着基於物理的高清渲染和環境。Unity 6 將通過一系列核心的新功能和改進來實現這一願景,我將在接下來的幾張幻燈片中與大家分享。通過這些改進,我們可以在啓動新項目時將可編程渲染管線作爲默認的渲染選擇,但值得注意的是,內置渲染管線仍將在 Unity 6 週期中得到維護,這將比當前的 LTS 週期更長。
2023 年在 PC 和主機上發佈的遊戲中, 約有 90% 採用了可編程渲染管線。 在移動端和 XR 平臺上, 2 023 年發佈的遊戲中有 50% 以上 使用了我們的新渲染技術。 正是這些在製作遊戲的創作者們提供的反饋, 影響了 Unity 6 版本的發佈。
但在大多數作品中使用 並不意味着它易於使用或學習。Unity 2022 LTS 和 Unity 6 的一個重點是提供上手使用需要的所有材料。首先是URP 3D 示例項目,包含 4 個場景和 4 種視覺風格,可在各種平臺上部署。其次是2D Happy Harvest 項目,它展示瞭如何利用動態光照、陰影、瓦片地圖和 URP 2D 渲染器的其他功能製作精美的 2D 遊戲。最後,製作遊戲還包括創建你自己的特效,在 Unity 6 中,我們的每個圖形包都包含示例項目,可用於學習和開始使用自定義通道、後處理、着色器、VFX、體積光,都可以通過編輯器中的 Package Manager 直接訪問。
在幾乎所有的製作中, 首要要求幾乎總是更好的性能。 在 Unity 6 中, 我們將大部分圖形開發資源用於優化渲染器, 並徹底改變了渲染方式。
我們將引入三項全新的突破性技術來提升性能。 首先,通過新的GPU Resident Drawer, 我 們改變了向 GPU 發送場景的方式, 以節省 CPU 的處理時間, 並以前所未有的速度 直接在 GPU 中渲染整個場景。 其次,由於現在的場景部分是在 GPU 上處理的, 因此GPU 遮擋剔除系統 可以自動放棄渲染隱藏的網格。 第三,在過去幾年裡, 圖像增強方面出現了很多創新。 這些技術可以在低分辨率下進行渲染, 儘可能保持圖像的清晰度和細節。 在 Unity 6 中, 我們引入了新穎的跨平臺空域時域後處理圖像增強功能, 簡稱 STP。 STP 能夠以 4K 分辨率渲染 PC 和主機遊戲內容, 同時也能優化便攜或移動設備上的遊戲畫面, 使它們在高像素密度的屏幕上依然保持高質量效果。
Unity 的另一個關鍵優勢是可擴展性。 在 Unity 6 中,我們將進一步優化可擴展性。 新的 URPRender Graph會自動 重新排列渲染通道 以優化幀資源, 這對性能和功耗非常重要 , 尤其是在移動設備上。 Render Graph 也是一個可擴展的框架, 因此它甚至能幫助你製作自定義的特效。 現在,技術美術師還可以使用Shader Graph更輕鬆地創建自定義的後處理效果。 VFX 藝術家也將不再受限於VFX Graph提供的節點, 他們現在可以創建自定義 HLSL 塊, 以 創建集羣行爲、流體, 或其他模擬等高級功能。
爲了支持擴展和優化內容, 我們已經提供了很多工具。 但 Unity 6 還提供了一些額外的工具:Render Graph 查看器可幫助你分析 不同通道的構建方式及其資源消耗情況;Shader Graph 熱圖和VFX Graph 性能分析工具可幫助你瞭解着色器或 VFX 的瓶頸。
在視覺方面,保真度的一個關鍵因素是全局光照。 在 Unity 6 中, 我們需要建立一個能夠 在支持的所有平臺上良好擴展的系統, 從移動平臺到高端 PC 和主機上, 這個系統就是自適應探針體積(APV)。 全局光照在探針內進行預計算 以提高運行時效率, 探針可被自動放置,便於快速迭代。 探針在每個頂點或像素上進行評估, 從而能夠高效地爲大物體提供光照, 同時保持很高的視覺效果。 探針可以減少對光照貼圖的需求。 有時甚至可以完全取代光照貼圖, 它們可以擴展視覺保真度, 並提供出色的性能。
通過集成的流式加載系統, 它可以讓創作者構建大型世界。 該系統支持不同的光照場景, 這些場景可以單獨甚至混合烘焙。 通過存儲天空遮擋, 即使是一個場景也能實現一天中不同時段的效果。
爲了支持這一切, 我們重新構建了烘焙引擎。 現在可以利用更低規格的 GPU 來加速光照貼圖和自適應探針體積烘焙。
幾乎所有基於現實世界的遊戲或內容 都需要高質量的水和天空, 而爲了與 HDRP 的所有其他高端功能一起正常工作, 開發和維護這些水和天空可能非常昂貴。 在 Unity 6 中, 任何人現在都可以在幾分鐘內添加它們, 而且水和天空都可以擴展和定製。水系統包括水流、浮動物體泡沫發生器、 波浪或河流變形器、 船體隔離器、水下渲染, 以及使物體與水交互的模擬 API。 任何人都可以使用它們, 並通過提供的示例項目和演示快速掌握。
對於天空系統, 我們在 Unity 6 中的目標是 提供對一天中不同時間場景的支持。 我們添加了夜空和行星支持, 以及可以提高遠距離視覺保真度的大氣散射, 還增加了臭氧層, 以改善晝夜之間的過渡, 創造更逼真的日落和日出。
當然,爲了讓遊戲世界充滿生機,往往還需要大量的植被。去年,我們發佈了SpeedTree 9.5,由於增加了葉片(Frond)部分並改進了剪切編輯器(Cutout Editor),最新版的 SpeedTree 可幫助你創建葉片結構和紋理,新的 Projector 可讓你快速在植物上添加蘑菇或雪等細節。
有了 Unity 6, 創作者就可以使用我們新的導入程序快速上手, 直接添加 SpeedTree 9 文件, 並藉助 SpeedTree 與 Resident Drawer 的集成, 以及直接在 GPU 上運行的 全 新 SpeedTree 9 Games wind 系統, 渲染帶有大量植被的場景。
下一步有什麼規劃?SpeedTree 10將於今年晚些時候推出, 有了新的高級藤蔓工具, 你就能毫不費力地製作出自然環境裝飾。 新的工作流程還將進一步助力你打造植物。 此外 SpeedTree 10 還將實現全新的時尚且現代的用戶體驗。
ProBuilder 6爲設計師帶來了 更 多工具質量的提升和改進。 迭代速度更快,屏幕空間最大化, 都有助於管理創作流程。 這讓像 Thiago Klafke 這樣的 關 卡設計和環境藝術在線教師 可以在設計關卡和測試遊戲之間快速迭代。
ProBuilder 6 改進了場景內集成, 減 少了菜單點擊次數, 爲創作提供了更多屏幕空間, 爲編輯組件提供了直觀的場景上下文菜單。 通過新的網格操作實時預覽, 這些編輯現在可以更快地迭代。 這些改進共同加快了 你創建沉浸式世界的工作效率。
Thiago Klafke 使用 ProBuilder 進行關卡設計和遊戲迭代
說到生成沉浸式世界, 我們不得不談談 去年推出的最新 Unity 產品Unity Muse。Unity Muse 是一套人工智能生成功能,利用我們定製的、經過嚴格訓練的模型,用戶可以在編輯器中生成無版權限制的原創資產。隨着我們不斷改進底層人工智能模型,生成的精靈質量將更好,風格化的 2D 圖像也將更精確。
你可能已經看到, 我們最近更新了 Muse Texture 模型, 以提供更好的輸出質量、 先進的材質生成技術, 和更多紋理選項。 我們對今年晚些時候推出的 3D 紋理改進 也感到非常興奮。 我們的人工智能研究團隊 開創了一種更好的方法, 可以根據提示詞、輸入幾何體 或參考圖像,生成高分辨率的 PBR 紋理。 有了這項技術, 你就能以有意義和可控的方式 用多種 PBR 材質 爲完整的 3D 資產自動生成紋理。
除了生成藝術圖像/素材,利用人工智能打造沉浸式世界原型需要的不僅僅是靜態圖像,如要設置交互,Muse Behavior 可以讓你在編輯器中建立決策樹,並提供人工智能功能來自動生成設置交互行爲所需的代碼。
爲了充分利用這些交互和動作,Muse Animate 可以將文字提示轉化爲動畫並應用到人形角色中。我們還在開發一種新的模型,以實現更逼真的動作,並能將你的草圖和視頻轉化爲角色動畫。
最後還有音頻,Muse 將於今年晚些時候推出利用人工智能從提示詞生成聲音特效,如運動和環境聲音。
說到人工智能, 讓我們再來看看更先進的Sentis。 Sentis 是我們的神經引擎, 它能讓你導入和運行人工智能模型, 從而在 Unity 遊戲中 解鎖以前不可能實現的新功能。 只需連接一次, 即可部署到任何 Unity 運行時支持的平臺。 我們認爲它將成爲引擎不可或缺的組成部分。
可以看一下《Plinio》—— 一款新穎奇特的遊戲, 它採用先進的手勢檢測技術, 由運行在 Sentis 上的人工智能模型提供支持, 以實現真正獨特的交互。 這種深層次的交互 創建出了真正的動態環境。
Sentis 目前仍處於測試階段, 是預發佈包。 今年秋季晚些時候, Sentis 將與 Unity 6 一起發佈。
《Plinio》中的手勢交互
高效的遊戲創作工具
你已經創建了一個能讓玩家沉浸其中的世界, 但還需要實際的遊戲玩法, 還有用戶體驗, 並儘可能高效地完成這一切, 包括幫助團隊更好地協同工作。 我們在整個 Unity 6 中對生產力進行了升級, 使你能夠更快、更高效地進行創作。
我們對UI Toolkit的質量進行了多項改進。 屬性和樣式屬性有多種來源, 包括父代、選擇器、變量和綁定。 爲了明確它們的來源, 我們在用戶界面生成器的檢查器中 添加了一項功能, 即在工具提示中顯示這些信息 以及其他有用的詳細信息。 我們通過添加搜索功能, 解決了在用戶界面生成器庫中 查找特定用戶界面部件的困擾。 該搜索功能適用於標準控件 和項目資產。
之前對於嵌套在多層 UXML 資產中的屬性 無法進行覆蓋操作, 現在我們增強了這個系統, 消除了這一限制。
爲了加快複雜和動態用戶界面的開發,我們正在引入一個高度靈活的數據綁定系統。該系統支持 ScriptableObject 和普通 C# 對象,讓你完全控制數據源。它可以綁定同一對象的多個特性和樣式屬性,並可通過代碼或用戶界面生成器進行設置。該系統用途廣泛,可用於編輯器和運行時用戶界面。
我們不斷向 UI 工具包標準庫中 添加新的控件, 爲你提供更多開箱即用的功能。 其中許多新增功能, 如樹形視圖和多列列表視圖, 都有助於在編輯器中 顯示和操作大型數據集, 從而方便了從 IMGUI 的遷移。 這些新控件中的大多數 也能在運行時環境中運行, 使你能夠爲遊戲或應用程序 構建用戶界面。 這種多功能性是 UI Toolkit 的衆多優點之一。
當需要更具體的功能時, 使用 UI Builder 創建和配置 自 定義用戶界面元素的流程得到了簡化。 將元素和屬性公開到 UXML 文件, 進而公開到 UI Builder, 現在只要用 C# 屬性裝飾代碼即可。 此外 UXML 對象還可用於 將複雜數據與自定義元素關聯起來, 使這些數據能在 UXML 文件中序列化, 並在用戶界面生成器中公開。
新的 UXML 序列化功能 還可以使用 property drawer 和 decorator, 以 在 UI Builder 的檢查器中 對自定義控件進行自定義顯示和操作。
我們正在開發一種解決方案,爲開始菜單或結果頁面等複雜屏幕添加動畫。 爲此,你需要能夠創建關鍵幀動畫, 並 將它們排列在一起, 甚至與其他類型的動畫相結合。
第二個重點領域 是使用自定義着色器創建更復雜的 UI 樣式, 這樣就可以產生高級視覺效果, 如模糊、發光、陰影 或其他任何視覺增強效果。
我們還注意到越來越多的玩家 要求能玩到更多的遊戲, 因此我們正在努力添加全面的多語言支持, 包括從右向左的語言 如阿拉伯語和希伯來語。 如前所述, 我們還希望在本地化軟件包中 添加 UI 工具包支持, 目前它只適用於 uGUI。 Unity 還發布了一個 C# API 用於連接移動設備上的本地屏幕閱讀器, 我們將在此基礎上進行擴展, 以便用 UI Toolkit 製作的用戶界面 可以直接與這些功能兼容, 同時還將增加對桌面平臺的支持。
最後, 你們還需要 UI 可以在世界空間中渲染。在內部的開發版本中,我們通過Panel Settings公開了這一功能,它現在有了一個新的 Render Mode 選項。選擇 World Space 時,UI 現在可以應用 3D 變換,並完全成爲場景的一部分。
實現過程中沒有使用 RenderTextures, 而是完全集成到了渲染鏈中, 這使得無紋理 UI 在任何尺寸或與攝像機的距離下 都能保持清晰美觀。 當然 UI Toolkit 的所有其他功能都能正常工作, 如樣式、動畫和輸入。 我們對這些產品感到非常興奮, 迫不及待地想要提供給大家。
當然,除了閃亮的新工具和工作流程之外, 我們也一直在鞏固基礎部分。 我們將提供多種方法 讓你更快地開始遊戲項目。 除了你已經聽說過的 URP 新示例項目外, 我們還在輸入系統包中添加了新的預設 和Project-wide 輸入操作, 這樣你就不必再設置 WASD 了。
我們還將引入新的工具, 以更好地分析作業系統, 幫助你瞭解多線程和作業之間的 複雜依賴關係。
可尋址系統(Addressables) 也 獲得了更好的預設和平臺默認設置, 從而節省了創建 Asset Bundles 的 重複設置任務。
現在,真正的重大改進要來了。 人工智能具有巨大的潛力, 可以幫助你和你的團隊完成基本任務, 並利用機器學習工具 更快地找到解決方案。Muse Chat, Sprite, Texture, Behavior 和 Animate 將在編輯器中提供, 以完善你現有的工作流程。 隨着 Muse 的不斷完善和擴展, 你將看到這些功能在編輯器中承擔更多任務, 並實現更深入的集成。
其中一個非常令人興奮的例子 就是 Muse Chat。 隨着 Chat 移至編輯器中, 它也變得可以感知項目。 這意味着你很快就能看到 爲你的特定項目量身定製的回覆、 解決方案和生成的代碼。 此外還有一整套令人驚歎的人工智能解決方案, 對於你想在項目中使用的可信任的解決方案, 通過 Muse 基礎架構 在編輯器上下文中訪問將更加方便。
回到圖形方面, 我們簡化了創建 VFX 和自定義着色器的過程, 以幫助你的遊戲展現獨特風格。 很多人每天都會花費大量時間 使用Shader Graph和VFX Graph, 我們正在改善用戶體驗, 爲兩者提供大量鍵盤快捷鍵, 更好地管理屬性和關鍵字, 加快 Shader Graph 的撤銷和重做操作, 並改進 VFX Graph 的屬性、 Blackboard 和節點搜索。 新的 VFX Graph 模板系統 讓創建新特效的速度更快, 並且更容易與團隊共享自己的 VFX 庫。
我們不僅關注用戶體驗的提升, 也致力於減輕學習曲線帶來的難度。 我們還添加了新功能, 讓 UI 設計師或藝術家可以使用 Shader Graph 創建動態和響應式的 UI 樣式。 VFX 藝術家們可以通過 URP 充分利用 VFX Graph。
爲了總結關於更高效工具的這部分內容, 讓我們回到 AI, 並談談我們在Sentis上做出的改進。 不是每個人都是機器學習專家, 因此我們正在努力使 Sentis 變得更加易於使用。 在 1 月份,我們推出了 與 Hugging Face 的集成, 將通過了 Unity Sentis 驗證的模型進行標記, 並預先將它們轉換爲 Sentis 格式。 你可以將這些模型導入編輯器中, 它們可以直接使用。 當然,這些模型都有配套的 C# 示例代碼, 如果你想調整模型的性能或功能, 我們也有圖形工具可以提供幫助。
遊戲中的模型必須快速運行, 即使 GPU 預算較低, 也要達到 100+ FPS 的目標。 爲了加快推理速度, 我們支持新的“神經”芯片組。 如果終端用戶的設備上有神經處理單元, Sentis 將自動利用這些額外的計算能力。
最後,我們最近添加了量化支持, 可將龐大的模型權重 從高精度浮點 32 值 轉換爲 INT 8 或其他變量。 這可以減少內存使用和計算時間, 有時甚至可以減少 4 倍。
端到端的多人遊戲
接下來是確保遊戲在發佈後繼續運營, 而成功的關鍵因素是推動玩家深度參與。 不出所料,你們需要的 是更好的多人遊戲創作體驗。 在 Unity 2022 LTS 中, Unity 的多人遊戲端到端解決方案集變得更加強大。 Unity 6 基於排行榜、玩家匹配等功能 提供了高效探索和交付 各種多人遊戲體驗的強大方法。
Unity 有許多解決方案 可以幫助滿足各種多人遊戲需求 , 我們正在開發一系列模板來幫助你上手操作。 但我們也明白, 當需要在項目中引入多人遊戲概念時, 你們往往需要技術選擇方面的指導。 爲了幫助解決這種情況, 我們正在編輯器中開發一箇中心位置, 即“多人遊戲中心”, 可以在這裡設置多人遊戲目標的參數, 並查看與項目相關的 推薦的工具、服務或學習資料。 你可以直接將其中一些添加到你的項目中, 並立即開始嘗試使用這些多人遊戲功能。
一旦有了可運行的遊戲玩法, 接下來的步驟就是使用多個客戶端進行測試, 以便通過分離的進程體驗遊戲。 這就是Multiplayer Playmode將提供的功能, 它 能讓多個客戶端和服務器的編輯器實例 在同一設備上同時打開, 並且使用的是磁盤上相同的源資產, 從而提供更高效、 更快速的多人遊戲開發週期。 你可以從我們的休閒合作 BossRoom 示例中 看到具體的工作情況。
在 BossRoom 示例中使用 Multiplayer Playmode
你的多人遊戲可能需要一個服務器授權模型 以防止作弊,例如在有競爭的情況下, 你可以在任何 Netcode Stack 中 使用 Multiplayer Playmode。 這裡有一個基於 DOTS 的動作競技遊戲示例, 通 過我們最新的競技遊戲示例項目 《Megacity Metro》進行展示。 在這種情況下, Multiplayer Playmode 將支持 專 用服務器的本地和遠程部署, 即使網絡拓撲結構複雜, 也能儘可能縮短迭代週期。
《Megacity Metro》示例展示
我們還提供了一個專用的服務器構建目標,讓你可以在一個項目中同時創建客戶端和服務器,從而大大縮短開發和迭代時間。我們正在添加更多的內容選擇功能,將幫助你在沒有自定義腳本的情況下在此過程中更進一步,並通過剝離項目客戶端部分的選項幫助你儘可能精簡服務器。
所有采用 Unity 引擎的多人遊戲解決方案 都基於Transport 包。這個包提供了一個強大的底層網絡層,你還可以利用它來構建自己的自定義 Netcode 以滿足特定的遊戲需求。Transport 現在支持 Unity Web,這表示你的解決方案可以在所有平臺上運行。當然,Multiplayer Playmode 和專用服務器工作流程可以與你的定製解決方案一起使用。
跨平臺觸及更多玩家
當然,打造一款身臨其境、引人入勝的遊戲 對於遊戲的成功發行至關重要, 但同時你也要確保在玩家所在的地方 以他們喜歡的方式提供遊戲。 通過 Unity 業界領先的平臺支持, 你可以爲 Web、移動、 PC、主機和 XR(擴展現實)等平臺, 包括一些最熱門的新設備構建內容。 讓我們來了解一下能夠幫助你 跨平臺觸達更多玩家的新功能。
在 Unity 6 中,我們將推出改進功能, 讓你在設置構建和探索新平臺時更加輕鬆。 我 們從許多人那裡瞭解到, 使用自定義腳本管理構建會面臨挑戰, 因爲我們的設置過於死板, 只能在項目級別進行配置。 我們非常重視你們的反饋, 並非常高興推出了“構建配置文件”, 讓你可以靈活地爲一個目標平臺 創建多個配置文件。 對於項目的每個階段, 無論是垂直切片、演示還是最終版本, 你 都可以爲每個配置文件 設置自定義設置和場景列表。
這還不是全部, 通過新的平臺瀏覽器, 我們還可以更輕鬆地發現和設置 Unity 支持的平臺。 這不僅僅是一個列表, 它還是你自動爲目標平臺 設置正確軟件包和正確設置的新捷徑。
將遊戲發佈到網絡上, 爲你提供了一個接觸大量玩家的巨大機會。 從 Unity 6 開始, 你就可以在任何有網絡的地方運行 Unity 遊戲, 包括移動瀏覽器。 你可以在本機應用程序內的 Web 視圖中 運行你的 Unity 遊戲, 也可以使用 Progressive Web App 模板, 讓你的遊戲表現得像本機應用程序一樣, 並擁有自己的快捷方式。
我們還與 Meta 合作, 爲其小遊戲平臺提供支持。 通過 Facebook 和 Messenger, 你將有機會接觸到 每天都在尋找新遊戲的數億玩家。 有了 Unity 6, 你就可以在這個平臺上 輕鬆構建和發佈基於 Web 的遊戲, 並大大擴展覆蓋範圍。
在這裡,你可以看到 Coatsink 提供的原始構建 與應用了我們最新小遊戲開箱即用工具 優化過的版本之間的對比, 加載時間已經不到原來的一半。
Coatsink Tested on Pixel 5 @ 48 Mbps
通過與 Google 的戰略合作伙伴關係,WebGPU現在可以在 Unity 6 預覽版中使用。 有了 WebGPU 後端的早期訪問權限, 你可以嘗試使用計算着色器、 GPU 蒙皮、 VFX Graph 等 GPU 驅動的渲染技術。 WebGPU 的設計目標是通過本地 GPU API 如 DirectX 12、Vulkan 或 Metal 提供現代圖形加速接口, 從而利用現代 GPU 功能, 並將其應用於 Web 端。
現在,Unity 6 預覽版的用戶可以提前訪問 Unity 的 WebGPU 後端, 支持 macOS 和 Windows 上的 Google Chrome 和 Microsoft Edge。 有關如何獲得訪問權限的詳細信息, 請訪問 Unity Web 論壇。我們 迫不及待地想看到 各位利用這項新技術創造出的作品。
接下來,讓我們回顧一下 與微軟公司合作的一些令人振奮的消息。 在 Unity 6 中, 我們爲基於Arm的 Windows 設備 添加了本機 Unity 編輯器支持, 這表示你可以在更多的 Windows 設備上 開發 Unity 遊戲, 充分利用 Arm 設備 所能提供的性能和靈活性。
你還可以使用Microsoft Game Development Kit工具包 開發 Win32 遊戲。 工具包中有 用於製作 Windows 單機遊戲的常用工具。
不僅要讓你的遊戲快速安裝, 還要在多種類型的 Android 設備上高效運行, 這一點非常重要。 爲此,Unity 6 通過 新的Addressables Android包 支持 Play Asset Delivery。 有了這項功能, 你將從動態交付選項中獲益。 如果再與“紋理壓縮目標格式化”相結合, 玩家將獲得爲其設備定製的紋理, 同時仍然保持較小的整體安裝大小。
Unity 還將包括一個新的 Application PointGameActivity, 由 Android Game Development Kit 工具包 提供支持。 通過使用 AndroidX, 該系統帶來了許多新優勢, 包括改進的線程支持 和增強的可更新性
在爲主機平臺開發內容時, 我們對迭代速度進行了重大改進。 通過 Unity 的增量構建管線, 你可以在兩次構建之間更快地進行迭代。 場景構建完成後, 後續構建將只關注增量(delta)部分, 這意味着在大多數情況下 構建時間會大幅縮短。
在測試 boat attack 項目時, 更改腳本後 Unity 6 與 2021 LTS 相比 構建時間縮短了近 50%, 不做任何改動的場景構建時間 從 40 秒降至 5 秒多一點。 這是一項巨大的改進, 將爲開發過程中的迭代目標、 迭代速度帶來顯著的好處。
最後, Unity 6 將爲XR開發提供大量新功能, 你可以在爲 Meta Quest 和 visionOS 等平臺 進行開發時使用這些功能。
無論是想用混合現實技術擴展現有遊戲,還是要製作全新的遊戲,AR Foundation都能讓你以跨平臺的方式將物理世界融入玩家的體驗中。在 Unity 6 中,我們將擴展網格劃分、遮擋、邊界框和持續錨定到 Meta Quest、visionOS 和 Android 等其他平臺。我們還在 ARCore 中添加了 Vulkan 支持,並針對 Meta Quest 進行了增強,從而讓玩家獲得更流暢、性能更強的視覺效果。
讓我們超級興奮的一項功能是Composition Layers,這是另一種提高遊戲視覺保真度的方法。這裡有一個並排對比圖,左邊是普通紋理,右邊是 Composition Layer。正如你所看到的,Composition Layer 的使用大大減少了僞影,文字更清晰,輪廓更鮮明,整體外觀更好看。我們還爲 Composition Layer 創建了交互式用戶界面組件,讓你只需極少的設置即可開始使用,或輕鬆轉換現有的用戶界面。
我們知道爲 VR 遊戲設置多人遊戲很困難,因此我們在 OpenXR 的基礎上開發了新的VR 多人遊戲模板,讓設置變得更容易。這個模板充分展示了 Unity 多人遊戲服務的廣泛功能,讓你可以直接使用專門的語音聊天、Lobby、網絡交互和手部追蹤功能來構建內容。
最後,對於爲 visionOS 進行開發的用戶來說,Play to Device是一項變革性的功能。它利用 Unity 的 PolySpatial 技術,通過本地網絡流式傳輸應用程序的內容,使你能夠在 Unity 編輯器、visionOS 模擬器或 Apple Vision Pro 上迭代和預覽內容。在 Unity 編輯器中進行的任何調整,如添加遊戲對象、調整檢視器值或完善 Shader Graph,都會立即實時同步到模擬器或設備上。更酷的是,如果戴着 Vision Pro 時使用這項新功能,你就可以使用 Mac 虛擬顯示器在編輯器中工作,並在旁邊看到你的空間內容。這是在爲 visionOS 開發遊戲時一種令人難以置信的全新工作方式。
實現最佳性能
我們不妨快速回顧一下過去 12 個月中在 Unity 引擎中出現的新的基礎功能。我特別要談的是實體組件系統(ECS),是我們面向數據技術棧(DOTS)的核心框架。從 Unity 2022 LTS 開始,ECS 已完全集成到編輯器中,並支持在所有平臺上進行生產。ECS 架構有助於設計更靈活的代碼架構,這樣,像《HEROish》這樣的遊戲就能在製作過程中更輕鬆地調整遊戲創意,降低重構風險。
ECS 還讓你可以完全控制目標設備的硬件,這就是像《Detonation Racing》這樣的遊戲能夠在其目標設備上提供如此激烈的遊戲體驗的原因。
ECS 高效的內存佈局和可擴展的處理能力能夠模擬更多具有複雜物理玩法的敵人,比如在《Hostile Mars》中的表現、《V-Rising》的開放世界中成千上萬的動態對象,這些對象都是基於 Unity 的 ECS 架構而實現的。最後,ECS for Unity 憑藉其 Netcode 堆棧和確定性爲多人遊戲提供了新的可能性。如果想要查看一個完全功能的演示,請查看《Megacity Metro》,這是一個可擴展、高併發、跨平臺的端到端多人平臺示例,我們在其中進行了超過一百名玩家的測試。
我們致力於打造 DOTS 生態系統,這可以通過當前正在開發的多個 ECS for Unity 的小版本來證明。ECS 1.1 和 1.2 已經在 Package Manager 中可用,我們正在準備版本 1.3。我們一直在聽取你在生產環境中的即時反饋,並準備了許多不同的修復和改進,這些將會通過 Unity 2022 LTS 和 Unity 6 發佈。
在最近的一項調查中,有 25% 的人告訴我們你們可以在生產中使用 ECS 作爲解決方案。但是你們也提到 ECS 的學習曲線可能很高,因此只有不到 10% 的人能夠在生產中實施 ECS。這與我們的目標相去甚遠,我們的目標是爲你的每個項目提供面向數據的性能。
這就是爲什麼我們一直在努力,以便在 Unity 6 之後的未來版本中將 GameObjects 和 Entities 更緊密地結合在一起。通過這樣做,我們將在編輯器中爲你提供 ECS 的強大功能,以利用其運行時的強大功能編寫工作流程。這也將使你更容易在基於 GameObject 的項目中引入有針對性的 ECS 解決方案,以解決特定的性能瓶頸。在許多情況下,不需要了解或處理 ECS 的複雜細節即可獲得更高的性能。
這種融合的第一個里程碑是確保項目中的每個 GameObject 都有一個與之關聯的等效實體,這將簡化在兩種環境中對項目數據的操作。你通常需要在 GameObject 和 ECS 之間同步的最重要數據是對象轉換,因此,我們正在調整轉換 API 和數據結構,以提高同步性能。這將促使我們統一場景並建立工作流程,以確保無論你使用哪個系統來處理項目數據,我們都能提供完全統一的體驗。
正如我前面提到的, GameObjects 和 ECS 的融合 將爲可擴展的項目創作工作流程 帶來驚人的應用。 爲了說明這一點, 我們一直在基於 ECS 對引擎動畫系統進行重大改造。 額外的性能空間使我們能夠在編輯器中 爲你提供更復雜、更動態的工作流程, 並讓你能夠在屏幕上顯示更多角色, 在運行時達到前所未有的複雜程度。
我們還一直在努力重新構想世界構建的工作流程, 這項工作將再次以 ECS 爲基礎, 使我們更接近於在 Unity 中 實現對大型開放世界的 開箱即用支持。 我們將在未來分享更多有關這些進展的信息
說到爲 100% 的 Unity 項目提供更高的性能,我很高興地告訴大家,我們在向CoreCLR遷移的過程中取得了重大進展。這是 Unity 引擎核心基礎現代化的又一步。
.NET 世界瞬息萬變, 微軟發佈的每一個新版本 都會提升性能。 通過將 CoreCLR 集成到 Unity 中, 我們將爲編輯器帶來更快的原始速度、 更簡單的集成開發環境構建集成 和更快的代碼重載, 從而大大改善迭代時間。
另一方面,新的優化和垃圾回收 將顯著提高運行時的原始性能。 早期跡象表明效果不錯, Unity 編輯器的某些部分 和使用 UI Toolkit 進行的測試的運行速度 提高了一倍。
我們很高興能在未來的 Unity 版本中 實現所有這些性能改進, 這樣無論你的專業水平如何, 都能製作出更恢弘的遊戲。
好了,這就是全部內容了。 你在過去一小時中看到的大部分內容 即將在 Unity 6 中與你見面。Unity 6 預覽版已於今年 5 月發佈,在今年晚些時候發佈 Unity 6 之前將提供全面的生產支持。我們看了新的工具和服務, 這些工具和服務加上 我們對整個引擎的改進和升級, 會在一定程度上解決你告訴我們的 常見要求和問題。
我們對 Unity 的下一個重要版本 感到非常自豪, 並迫不及待地想看到 你們能用它創造出什麼。 再一次代表我的團隊 感謝你與我們共度美好時光, 祝大家在 Unite Shanghai 收穫滿滿! 謝謝!
Unity 官方微信
第一時間瞭解Unity引擎動向,學習進階開發技能
每一個“在看”,都是我們前進的動力