Unity 2019周期的最后一個Beta版本Unity 2019.3 Beta版現(xiàn)已發(fā)布唉俗。該版本帶來了一些新功能和改進吓坚,以及重新設(shè)計的UI界面。
請下載Unity 2019.3 Beta版梯捕,了解最新功能笛厦、體驗全新的輸入系統(tǒng)、Universal Render Pipeline通用渲染管線中的后期處理功能建车、物理更新扩借、更快的編輯器內(nèi)迭代過程,以及Unity光線追蹤功能缤至。
本文將介紹Unity 2019.3 Beta版的重點新功能與改進潮罪,了解完整的發(fā)布日志罐寨,請訪問:
https://unity3d.com/unity/beta/2019.3.0b1
下載Unity 2019.3 Beta
請使用Unity Hub下載Unity 2019.3 Beta,選擇Installs > Add Latest Pre-Releases即可找到該版本鳍悠。
我們希望收到用戶的反饋瞎颗,從而確保我們可以在Unity 2019.3正式版發(fā)布時提供最好的Unity版本。
此外何恶,我們希望用戶嘗試通過DXR API實現(xiàn)的全新光線追蹤功能孽锥,它可以在高清晰渲染管線HDRP中使用。
Unity 2019.3 Beta版的測試用戶還將有機會贏得NVIDIA GeForce RTX 2080顯卡细层。
編輯器更新
重新設(shè)計的編輯器UI
Unity 2019.3 Beta版的編輯器UI具有統(tǒng)一的圖標惜辑,可以更清晰地傳遞信息,并提供完整的高DPI支持今艺。
新UI加入Inter字體韵丑,具有更好的可讀性,并且可根據(jù)不同UI和顯示器類型進行縮放虚缎。我們還為懸停狀態(tài)控制提供了可視化反饋撵彻,提高了UI的可用性,讓UI擁有更好的響應(yīng)效果实牡。
下圖為重新設(shè)計的編輯器UI陌僵,增添了許多可用性和可視化方面的改進。
新的Enter Play Mode選項
我們在Project Settings > Editor > Enter Play Mode Options中添加了實驗性功能Enter Play Mode選項创坞。這些選項允許用戶在項目未發(fā)生代碼變更時碗短,在Enter Play Mode進程禁用域和場景的重新加載。
這樣可以讓用戶更快地制作原型和迭代题涨。根據(jù)我們的測試結(jié)果偎谁,這項更新可以為用戶節(jié)省50-90%的迭代時間。
如果希望在進入運行模式前重置游戲狀態(tài)纲堵,用戶也可以通過API和回調(diào)使用該功能巡雨。
下圖中為使用Enter Play Mode選項取得的測試結(jié)果,測試的項目分別是:一個AA級成品游戲席函、Unity的FPS示例項目铐望、《Megacity》演示項目和空白項目。下圖展示了編輯器進入運行模式所需的時間茂附,數(shù)字越小正蛙,效果越好。
核心功能
AssetDatabase Version 2
我們將AssetDatabase的Version 1管線替換為了Version 2营曼,該版本具有資源依賴跟蹤功能和其它改進乒验,為更加穩(wěn)定高效的可擴展管線建立了基礎(chǔ)。
我們還加入了新的實驗性功能溶推,你可以在AssetDatabase中保存多個修改版本徊件,從而大幅改進平臺的切換過程奸攻,并能夠更好地替換之前導入的不同版本資源。
其它實驗性功能包括:根據(jù)需要導入資源虱痕,把資源導入過程作為后臺進程等睹耐。這些功能將在Unity 2019.3 Beta開發(fā)周期加入。
可尋址資源系統(tǒng)
新版可尋址資源系統(tǒng)提供新的Scriptable Build Pipeline可編程構(gòu)建管線部翘,為用戶提供了一種通過“地址”加載資源的方式硝训,并通過簡化內(nèi)容的創(chuàng)建和部署,控制資源管理過程的開銷新思。
了解更多詳情窖梁,請閱讀:《可尋址資源系統(tǒng)介紹》。
序列化引用和多態(tài)數(shù)據(jù)
新的SerializeReference屬性可以把C#的類序列化為引用夹囚,而不是序列化為數(shù)值類型纵刘。這意味著可以使用POCO即簡單傳統(tǒng)C#對象來進行引用,從而簡化了表示和管理圖荸哟,樹等數(shù)據(jù)結(jié)構(gòu)的代碼假哎。
SerializeReference屬性還支持讓字段包含多態(tài)數(shù)據(jù),例如:類型為List<IAnimal>的列表可以包含狗的類鞍历,即class Dog : IAnimal{}和貓的類舵抹,即class Cat : IAnimal{}。
最后劣砍,標記了序列化成引用的字段可以表示空值惧蛹。這與標準行為相反,在標準行為中刑枝,如果對空字段進行序列化香嗓,則會使用相應(yīng)類型的默認構(gòu)造函數(shù)進行反序列化處理。
物理更新
PhysX庫從v3.4更新到v4.1版本装畅。其中包含新的Temporal Gauss-Seidel解算器陶缺,它能夠讓關(guān)節(jié)更好地抵抗過度拉伸情況,并且避免在模擬過程中出現(xiàn)的不穩(wěn)定行為洁灵。啟用新的解算器,請點擊Project Settings > Physics掺出。
我們公開了的新Broad-phase Automatic Box Pruning碰撞檢測算法徽千,它是現(xiàn)有Multi-Box Pruning算法的升級版本,可以自動計算世界邊界和分區(qū)數(shù)量汤锨,
此外双抽,我們對桌面平臺提供了速度更快的網(wǎng)格Mid-phase算法。該算法不需要構(gòu)造任何資源開銷較大的加速結(jié)構(gòu)闲礼,例如:R-Trees牍汹,因為使用該算法可以減少MeshCollider的實例化時間铐维。
我們添加了一個新的API,允許為MeshCollider延遲烘焙網(wǎng)格慎菲。你可以把計算量較大的網(wǎng)格烘焙過程改在加載畫面或過渡場景中進行嫁蛇,例如:冒險游戲中的對話場景。這個API對線程是安全的露该,因此你可以從主線程外調(diào)用函數(shù)睬棚,包括:通過C# Job System進行調(diào)用,從而同時烘焙多個網(wǎng)格解幼。
了解更多詳情抑党,請閱讀NVIDIA的《PhysX 4.1 SDK Guide指南》中的“Migrating from PhysX SDK 3.4 to 4.0”部分:
https://gameworksdocs.nvidia.com/PhysX/4.1/documentation/physxguide/Manual/MigrationTo40.html
下圖為通過在所有可用內(nèi)核之間的分配負載,我們可以減少實例化MeshColliders所需的時間撵摆。
創(chuàng)作工具和技術(shù)
資源包管理器改進
資源包管理器也有一些變化和改進底靠,例如:現(xiàn)在可以通過URL,安裝來自Git代碼庫的資源包特铝。
我們現(xiàn)在可以通過資源包管理器暑中,直接管理Asset Store資源商店的資源合集。該視圖的使用方法類似Asset Store資源商店個人賬戶中的My Assets視圖苟呐,你可以在此為項目導入自己所需要的內(nèi)容痒芝。
下圖展示從資源包管理器下載和導入自己的資源。
動畫綁定功能更新
在Unity 2019.3 Beta版中牵素,可以在Timeline中預覽動畫的綁定效果和關(guān)鍵幀严衬,以加速迭代過程,并充分利用Timeline的工具笆呆。
這樣可以實現(xiàn)強大的多軌道分層動畫工作流程请琳,動畫師可以通過使用Unity 2019.3,混合多個剪輯和動態(tài)綁定重寫赠幕,從而創(chuàng)作出獨特的動畫俄精。
這些工具也可以用來組合具有多個角色,物體和攝像機的影片序列榕堰,而且能夠使用Animation Rigging資源包的綁定約束來修改動畫剪輯竖慧。
下面展示了Timeline上的多軌道分層動畫工作流程。
地形更新
在Unity 2019.3 Beta中逆屡,你可以在地形上創(chuàng)建孔洞圾旨,從而更容易制作出洞穴,水井和戰(zhàn)壕等地形魏蔗。該功能可以和其它Unity功能系統(tǒng)無縫結(jié)合使用砍的,例如:物理,導航網(wǎng)格和光照貼圖莺治。開發(fā)者可以通過腳本訪問地形孔洞數(shù)據(jù)廓鞠,實現(xiàn)自定義地形邏輯帚稠。
使用Paint Surface Mask工具,選取筆刷床佳,然后在地形上像繪制材質(zhì)那樣繪制孔洞即可滋早。
粒子系統(tǒng)的C# Job System支持
現(xiàn)在我們可以使用C# Job System控制粒子數(shù)據(jù),不必在腳本和本地代碼之間復制數(shù)據(jù)夕土,新版本也包括對Burst Compiler和Jobs依賴的支持馆衔。
圖形更新
本文,我們將重點介紹Unity2019.3 Beta部分圖形功能怨绣,包括對高清晰渲染管線HDRP和通用渲染管線進行了大幅改進角溃。
在Unity 2019.3中,輕量級渲染管線LWRP已經(jīng)改名為通用渲染管線篮撑,通用渲染管線加入的全新后期處理功能帶來了更好的性能和效果减细。
通用渲染管線改進
通用渲染管線適用于任意Unity目標平臺,能夠為用戶提供最佳性能赢笨。我們?yōu)橥ㄓ娩秩竟芫€重新設(shè)計了后期處理功能未蝌,現(xiàn)在該功能直接集成到管線之中,提供更高效的性能茧妒。
通用渲染管線的后期處理功能包括:抗鋸齒萧吠、景深、攝像機動態(tài)模糊桐筏、Panini Projection效果纸型、泛光、鏡頭畸變梅忌、色差狰腌、顏色分級、色調(diào)映射牧氮、暈影琼腔、膠片顆粒和8位抖動效果。
下圖是通用渲染管線的部分后期處理效果踱葛。
類似HDRP中的后期處理功能丹莲,通用渲染管線的后期處理功能也使用了CoreRP著色器庫的體積框架,這意味著該功能現(xiàn)在支持體積功能尸诽。
我們把通用渲染管線正向渲染器的Light Limit光線限制提高到256個可見光線圾笨,但由于移動項目的光線限制是32,所以這項改動不適用于移動項目逊谋,通用渲染管線最多可以處理8個Per-Object光線。
HDRP中的光線追蹤
HDRP資源包中的DXR API(預覽版)為高清晰渲染管線HDRP而設(shè)計土铺,DXR API主要面向工程和建筑行業(yè)的應(yīng)用程序胶滋。
其中一些實現(xiàn)的功能包括:定向陰影板鬓、區(qū)域陰影、GI究恤、反射和透明效果俭令。
在Unity編輯器中,你可以通過使用API部宿,找到光線追蹤著色器和光線追蹤加速結(jié)構(gòu)抄腔,從而能夠創(chuàng)建,構(gòu)建和更新結(jié)構(gòu)理张,并分派和綁定著色器的屬性赫蛇。
光照更新
在Unity 2019.3 Beta中,我們可以合并來自不同加載場景的光照探針雾叭,從而更容易處理被分為較小塊的大型場景的光照悟耘。在所有附加場景加載完成后,通過使用簡單的API調(diào)用织狐,就可以獲取場景中渲染器使用的所有已加載探針暂幼。
漸進式光照貼圖的主線程性能得到了極大的改進,使在烘焙時能夠?qū)崿F(xiàn)更流暢的編輯器交互移迫。
在進入光照貼圖預覽場景模式后旺嬉,新的Lighmap Exposure設(shè)置會顯示為場景視圖的小滑塊,這將有助于用戶更好地評估不同的HDR光照貼圖厨埋。Lightmap Preview窗口中也有相同的滑塊邪媳。
我們?yōu)镃PU光照貼圖添加了光源功率的采樣功能。我們不會對每個光線投射陰影射線揽咕,那樣會影響部分光照貼圖的體素悲酷,而是會根據(jù)概率挑選最適合的光線進行投射,這樣可以發(fā)射更少的射線亲善,降低噪聲设易,并提高烘焙的性能。
漸進式光照貼圖添加了兩個新的光線形狀蛹头,它們對應(yīng)著HDRP的方塊光線形狀和聚光燈的椎體光線形狀顿肺。兩個形狀都可以完全烘焙,或作為支持陰影遮罩的混合光線來使用渣蜗。
高清晰渲染管線HDRP和通用渲染管線中的烘焙光照貼圖現(xiàn)在都支持內(nèi)部聚光角度屠尊。
我們在GPU光照貼圖(預覽版)添加了兩個功能,使GPU光照貼圖有更多的CPU光照貼圖對應(yīng)功能耕拷。新加入的子網(wǎng)格支持可以通過多個網(wǎng)格的渲染器讼昆,提供正確的GI響應(yīng)。GPU光照貼圖現(xiàn)在使用和CPU光照貼圖相同的采樣算法骚烧。
在一些場景中浸赫,我們很難使用光照探針實現(xiàn)平滑的光照∪蛭В現(xiàn)在光照探針支持更靈活的采樣數(shù)量,能夠在有發(fā)光效果的場景或其它復雜光照條件下既峡,提高探針的質(zhì)量羡榴。
漸進式光照貼圖現(xiàn)在包含AMD Radeon Pro Lightmap Denoiser降噪器。
平臺更新
新輸入系統(tǒng)
我們發(fā)布了新輸入系統(tǒng)的預覽版本运敢,它允許你使用任意輸入設(shè)備來控制Unity內(nèi)容校仑。和舊輸入管理器Input Manager相比,新的輸入系統(tǒng)更加強大而靈活传惠,具有更高的可配置性迄沫。
下圖展示新輸入系統(tǒng)允許你輕松映射任意控制類型到游戲操作。
Unity Runtime Library運行時庫
現(xiàn)在涉枫,我們可以把Unity提供的功能直接加入到原生移動應(yīng)用中邢滑。這些功能包括:3D/2D實時渲染、增強現(xiàn)實愿汰、2D迷你游戲和3D模型等困后。
我們可以把Unity運行時組件和內(nèi)容集成到原生平臺項目。Unity Runtime Library公開了控制功能衬廷,從而在原生應(yīng)用中管理加載摇予,激活和卸載的時間和方式。
了解更多詳情吗跋,請閱讀:《在原生iOS或Android應(yīng)用中將Unity作為庫使用》侧戴。
下面是將Unity渲染功能集成到原生iOS應(yīng)用的示例。
根據(jù)需要進行渲染
這項功能允許你獨立于其它子系統(tǒng)控制渲染循環(huán)跌宛,這意味著用戶會有更多控制功能來降低電量消耗酗宋,并避免出現(xiàn)CPU熱量節(jié)流情況。
下圖展示了全新的OnDemandRendering API可以在運行時改變渲染頻率疆拘。
服務(wù)更新
Remote Config遠程配置
Remote Config遠程配置預覽版資源包是一種全新的云服務(wù)蜕猫,為實時內(nèi)容創(chuàng)作和遠程配置提供支持。
我們對Remote Config遠程配置加入了下列功能:
完全兼容任意分析平臺哎迄。
無狀態(tài)用戶細分和實時目標選取回右。
通過編輯器或API構(gòu)造全棧式遠程控制功能。
支持功能標記和分階段部署過程漱挚。
在下圖用例中翔烁,我們可以啟用或禁用事件,測試游戲中限定版活動禮包的價格旨涝,并替換資源模型蹬屹,創(chuàng)建具有節(jié)日氛圍的環(huán)境。
贏取NVIDIA GeForce RTX? 2080顯卡
通過參與Unity 2019.3 Beta版的測試過程,你將有機會贏取NVIDIA GeForce RTX? 2080顯卡哩治。
獲得抽獎的方法是:尋找并匯報Unity 2019.3 Beta版開發(fā)周期中至少一個尚未發(fā)現(xiàn)的Bug秃踩,并在報告內(nèi)容中添加“#Beta2019Win_NVIDIA”標簽。
抽獎活動于8月27日上午00:01開始业筏,Bug報告的截止提交時間為10月28日晚上23:59。參與抽獎活動不必購買Unity付費版本鸟赫。
請注意:提交的Bug必須在此前從未被發(fā)現(xiàn)過蒜胖,并且需要能夠由Unity開發(fā)人員進行重現(xiàn)和確認。
Unity Beta program
只需從Unity Hub下載我們的公開Beta版本抛蚤,就可以嘗試使用到以上所有新功能和改進台谢。
通過加入公開Beta測試,你可以在最新的Unity TECH版本發(fā)布時岁经,確保自己的項目可升級到最新版本朋沮。你還可以幫助我們找到并修復Bug,讓我們一起為Unity社區(qū)提供最高質(zhì)量的軟件缀壤。
了解如何成為一名合格的Unity Beta版測試人員樊拓,請閱讀《Unity測試人員指南》:
https://forum.unity.com/threads/a-guide-to-being-an-effective-beta-tester.402777/
小結(jié)
Unity 2019.3 Beta版的主要新功能與更新為大家介紹到這里。我們將在9月23日-26日舉辦的Unite Copenhagen大會塘慕,為Beta測試用戶舉辦多個特別的活動筋夏,如果你想了解新功能的更多信息,并與其背后的開發(fā)團隊進行交流图呢,請不要錯過条篷。
下載Unity Connect APP,請點擊此處蛤织。?觀看部分Unity官方視頻赴叹,請關(guān)注B站帳戶:Unity官方。
請點擊[閱讀原文]訪問Unity答疑專區(qū)留下你的問題指蚜,Unity社區(qū)和官方團隊幫你解答:
Connect.unity.com/g/discussion