來源 http://blog.csdn.net/dark00800/article/details/75209544html
Unity3d不久以前正式發佈了Unity3d 2017.1, 這個版本的發佈也宣告了Unity3d正式告別了5.x時代,而且開始已年份直接命名,開啓了新的紀元。那麼Unity3d 2017相較上一版本到底有哪些改進呢?git
這介紹這些改進以前先放出下載地址:Unity 2017.1
有趣的是經過Unity產品藍圖咱們能夠發現Unity 2017.2 beta已經提供下載測試而且Unity 2017.3也已經在製做中了。
Unity 2017.2 beta下載地址:Unity 2017.2 beta程序員
如下關於Unity2017.1的介紹內容來自Unity官方中文社區,原帖地址:[官方] Unity 2017.1正式版發佈github
藝術家敘事工具: Timeline和Cinemachine介紹web
設計師、藝術家或動畫師們可使用新的集成敘事工具,本身製做影視內容和遊戲視頻,而不用依賴程序員。這意味着開發效率更高,而節約溝通與排隊成本。編程
Timeline是一款強大的可視化新工具,可用於建立影視內容(例如短片Adam)。經過編排遊戲對象、動畫、聲音和場景,來建立過場動畫、遊戲視頻等等。有了Timeline,您能夠專一於敘事和電影藝術創做,而非編碼。瀏覽器
Timeline基於軌道的序列工具,使用「拖放」操做來編排動畫、聲音、事件、視頻等元素,以更快地建立漂亮的過場動畫和程序化內容。Timeline有許多功能,例如動畫、音頻、自動關鍵幀,以及能夠鎖定或靜音特定軌道的多軌道界面。Timeline可經過Playable API進行擴展,支持建立自定義軌道,來驅動遊戲中的任意系統。您能夠製做一個Timeline剪輯來表示幾乎全部內容——而且能夠重複播放、縮放和混合這些剪輯,全部這些均可在Timeline中實現。 安全
Cinemachine 是多年遊戲和電影攝像機的構建經驗凝聚而成的結晶。如今,它將業界領先的攝像操做置於全部人手中,引領了程序化攝影的時代。架構
這是一套智能攝像機,能夠動態的根據場景組成和交互,在最佳時間拍攝最佳鏡頭。使您擺脫無盡的手工動畫、攝像機編程以及修訂的過程。併發
Cinemachine能夠在Asset Store資源商店中下載,如今就添加到您的項目中。
從第一人稱射擊遊戲到第三人稱動做冒險,您能夠用Cinemachine完全改變遊戲內攝像機。很容易地:
合成鏡頭,把重點放在藝術方向上,而非實現細節。給Cinemachine智能攝像機一個簡單的指示,好比跟隨人物的頭部,若是動畫發生變化,鏡頭會自動更新並繼續正常工做。
在Unity 2017.1中,咱們爲Cinemachine增長了不少新功能,好比:
Timeline和Cinemachine結合使用,您能夠將敘事帶入更高的層次。使用後處理棧來進一步建立特效,烘托場景氛圍和戲劇效果。
Post-processing將全屏濾鏡和特效應用於攝像機的圖像緩衝區,而後再將其顯示在屏幕上。您可使用圖像後處理特效來模擬物理攝像機和電影效果。
最新版的Post-processing棧測試版能夠在此下載。最終版預計將於今年夏季發佈。(注意:上一個穩定版本能夠在Asset Store資源商店中下載)
改進後的後處理棧將一組完整的圖像效果整合到單個後期處理流程中,並帶有一系列高質量的攝像機效果:
您能夠將多個特效組合到單個Pass中,使用基於Asset的預設配置系統管理特效也很是輕鬆。
顏色分級效果是一種支持Academy Color Encoding System (ACES)的全HDR顏色管線,低端平臺可使用LDR管線。該棧有兩個屏幕空間的光照特效,即環境光遮蔽和屏幕空間反射。
這個新版本還提供了一個基於體積的混合特性,您能夠在場景中定義區域(任何類型的網格),並在玩家進入區域時設置特定的氛圍/外觀。Unity會自動在體積之間進行混合,以實現流暢的外觀轉換。
Unity Collaborate多人協做已結束測試,與Cloud Build雲構建一塊兒成爲Unity Teams的一部分,僅用一個解決方案一套功能,便可幫助您更快速地進行團隊協做。Unity Teams將可無償使用至2017年10月。
對於Collaborate多人協做,咱們在Unity 2017.1中發佈的首個發佈版本優先處理了Beta用戶提供的反饋。除了性能改進、穩定性和Bug修復以外,咱們還增長了一組新功能:選擇性推送、更佳的Asset瀏覽器集成和一個新的「In Progress」功能,用以標誌團隊成員在某個場景或預製件上有未發佈的本地更改。
如下是咱們爲Collaborate多人協做添加的一些新功能:
In Progress標誌
爲場景和預製件添加了In Progress標誌,以指示團隊中其餘人已對某個場景或預製件作出了一些未發佈的本地更改。這個特性有助於協做者協調對場景和預製件的更改。
右鍵單擊選擇發佈
咱們添加了右鍵單擊操做,如今您能夠在項目瀏覽器中直接發佈、恢復、查看差別,解決文件衝突。這是一個主要的用戶痛點源頭,咱們但願使Collaborate的行爲與其餘項目瀏覽器的行爲更加一致。請注意,這種UX容許您選擇性地發佈已更改的Asset。以前的版本中,您必須發佈全部更改。
瀏覽體驗更佳
在項目瀏覽器的「收藏」中添加了新的過濾器,包括「全部修改」、「全部被排除」和「全部衝突」,這樣用戶就能夠看到他們全部修改過的文件、全部正在修改的文件、帶有衝突的文件和忽略的文件。特別要留意的是「All in Progress(一切都在進行中)」,這讓您能夠實時看到Collaborate團隊中的其餘人正在處理哪些Asset(稍後將詳細介紹)。
實時操做分析
Unity 2017.1能夠經過數據驅動的實時操做,隨時得到豐富的分析數據。深刻了解您的用戶與您做品的互動狀況,並實時作出相應的調整,迎合他們的習慣,無需從新部署新版本。在Unity 2017中,您能夠更好地爲用戶提供更佳的遊戲體驗。
經過Standard Events (目前是Beta版)能夠進行更高效的洞察,它提供了一組精心設計的預約義事件,可揭示與您遊戲相關的重要信息。使用新的Analytics Event Tracker,無需代碼便可實現這些功能。
使用Remote Settings特性,能夠即時更改遊戲,無需從新部署,該特性已添加到Unity Analytics分析服務中。
2D改進
在Unity 5.6中,咱們爲2D遊戲開發者對工具和工做流程進行了重大改進。Unity 2017.1中引入了2D Sprite Atlas,這是一種新的Asset,將取代Sprite Packer。隨着它的出現,新改進的工做流程能夠在運行時更好地控制精靈的打包和使用。圖集是Unity中2D工做流程的重要組成部分,而精靈圖集不只提供了更簡單的圖集建立和管理方式,還有相應的腳本API,可得到更多的控制和用途。
Sprite Masks用於在世界空間中隱藏或顯示精靈或精靈組的一部分。精靈遮罩僅對擁有Sprite Renderer組件或粒子系統的對象生效。
在Unity 2017.1中,咱們還爲精靈編輯器添加了精靈物理形狀。能夠爲精靈設置自定義的默認形狀,以使用PolygonCollider2D生成碰撞器形狀。
動畫改進
咱們對Animation窗口進行了全面修改,改進了關鍵幀的工做流程,使動畫製做更方便和熟練,並支持與Animator狀態機進行交互。Performance Recording是一個實驗性功能。
新的關鍵幀工做流程支持明確指定什麼時候將哪幀變爲關鍵幀,並在從新評估/預覽動畫時,將全部未修改且未關鍵幀化的屬性值都丟棄。咱們已經改變了在Animation窗口中編輯剪輯的默認行爲(新的默認預覽模式)、視覺反饋和全局關鍵幀操做熱鍵。這些變化的目的是在Animation窗口以外爲關鍵幀操做提供一個流暢的工做流程,同時預覽動畫剪輯無需處於自動關鍵幀或錄製模式下。
如今在編輯器中能夠對狀態機行爲進行調試。
咱們還引入了GameObjectRecorder,這是一個新的實驗性編輯器特性,它容許您記錄GameObject和它子對象上的任何屬性。這樣就能夠輕鬆地建立動畫,將被記錄的全部內容保存到一個動畫剪輯中。歡迎訪問論壇進行反饋。
Playables已正式發佈
Playables API經過使用樹狀結構的PlayableGraph組織和評估數據來源,提供一種建立工具、特效或其餘遊戲機制的方法。PlayableGraph容許您混合和修改多個數據源,合成爲單一輸出後播放。
Playables API支持動畫、音頻和腳本。Playables API還提供了經過腳原本與動畫系統和音頻系統進行交互的能力。
Playable API是一個通用API,它最終將用於視頻和其餘系統。查看文檔瞭解更多細節。
Ambisonic音頻
在Unity 2017.1中,咱們增長了對環繞立體聲音頻剪輯的支持,這是全方位環繞音頻技術,它(除了水平面外)還覆蓋了聽衆上方和下方的聲源。
Ambisonics以多聲道格式儲存。它不是將每一個通道都映射到一個特定的揚聲器,而是以一種更通用的方式來表示聲場。而後,根據聆聽者的方向(即XR中用戶的頭部旋轉),旋轉聲場。聲場也能夠被解碼成一種與揚聲器設置相匹配的格式。Ambisonics一般與360度視頻結合使用,也能夠用做音頻天空盒,表現遙遠的環境聲音。
咱們還添加了Ambisonic解碼器插件,並且如今也可使用正開發中的API,在新的敘事工具Timeline中使用音頻剪輯了。
編輯器改進
咱們在UnityEditor.IMGUI.Controls中添加了一個新的ArcHandle類,它能夠在場景視圖中交互式地編輯弧線。還加入了名爲SearchField的新IMGUI控件,它帶有普通和工具欄用戶界面風格,但也能夠自行定製。
如今還支持使用JetBrains Rider做爲外部腳本編輯器。
其餘改進還包括對全部播放器循環階段添加分析器標籤,改進Package Export加載狀態,以及記錄已鏈接玩家的日誌信息,這些都將出如今編輯器控制檯中,使調試更加輕鬆。
改進了對Visual Studio的支持,包括Mac OS
Unity安裝程序如今能夠選擇在Windows上安裝Visual Studio Community 2017(而非Visual Studio Community 2015)。安裝速度顯著提升也更輕量。
Mac用戶也別難過,如今可使用Visual Studio了!微軟發佈了Mac版的Visual Studio和Tools for Unity。Visual Studio for Mac還提供了許多很酷的功能:一鍵調試,Unity消息的IntelliSense(完整Unity特定庫代碼),着色器代碼高亮顯示等等(點此查看詳情)。
場景與Asset Bundle改進
咱們對遊戲中的場景和Asset Bundle進行了一些改進。更改底層架構使場景和Asset Bundle加載速度更快,從而使玩家體驗更加流暢。咱們還建立了一個工具,Asset Bundle瀏覽器——以幫助建立和優化Asset Bundle。
Asset Bundle瀏覽器
Asset Bundle瀏覽器的Beta版與Unity 2017.1一同發佈。該工具容許您在Unity項目中查看和編輯Asset Bundle的配置。它的目的是替換當前選擇Asset的工做流,並在檢視窗口中手動設置Asset Bundle的工做流程。如今您能夠集中查看全部的Asset Bundle配置。經過使用上下文菜單和拖放功能,配置、修改和分析相關資源包。
該工具將標記可能值得關注的警告,並提示將中斷資源包建立的錯誤。從上層查看包集合,您能夠更有效地組織Asset Bundle。在更低層查看單個Asset Bundle,您能夠看到因爲顯式包含或依賴項的關係,哪些內容將會放入包中。
更多細節請查閱文檔。
Asset Bundle瀏覽器能夠從Asset Store資源商店下載。
腳本運行時升級(實驗性):暢享 C# 6和.NET 4.6
在Unity 2017.1中,咱們引入了實驗性版本的腳本運行時內核,該內核已升級到Mono/.NET 4.6運行時。它包含了許多修復、性能改進,可使用C# 6。咱們相信它會提升遊戲的總體性能。
能夠在Player Settings中啓用.NET 4.6:
注意,更改該設置會在重啓編輯器後生效,由於它會影響編輯器和播放器。對應的腳本API是PlayerSettings.scriptingRuntimeVersion屬性。
IL2CPP徹底支持新的.NET 4.6 API,所以您仍可以使用C#編寫腳本,同時享有原生C++的性能優點。若是您發現任何問題,請訪問論壇進行反饋。
模型導入器改進
從像Maya這樣流行的數字內容創做(DCC)工具導入Asset的過程是首批重要的改進對象,這使得DCC工做流程變得更加輕鬆。最終提升了藝術家和設計師的生產力,減小了程序員的麻煩。
如今Unity導入從Maya導出的FBX文件已支持Segment Scale Compensation,並且FBX SDK已升級至2016.1.2。
在導入FBX文件時,咱們還添加了計算加權法線的選項,如按面積、角度或兩者皆有,以及硬邊緣的固定法線生成。如今,能夠從FBX文件中導入燈光和攝像機,Unity會自動在須要時爲對象添加和配置攝像機和/或燈光組件。
Unity如今可使用「Import Visibility」屬性從FBX文件中讀取可見性屬性。值和動畫曲線將啓用或禁用MeshRenderer組件:
Progressive Lightmapper改進
Unity 2017.1增長了Progressive Lightmapper中對烘焙LOD的支持。在烘焙LOD時,Enlighten和Progressive Lightmapper之間的主要區別在於,使用Progressive Lightmapper沒必要在LOD周圍放置光照探針來得到反射光。在徹底烘焙分辨率下,間接光照將爲LOD提供更優質的烘焙光照貼圖,您也能夠避免爲它們設置光照探針的繁瑣過程。(Unity 5.6中也有此功能。)
咱們還在Progressive Lightmapper中增長了對雙面材質的支持,經過添加新的材質設置,使光線與背面接觸。啓用後,在進行全局光照計算時幾何體的兩面都被包括在內。當從其餘對象觀察時,背面不會被認定爲無效。背面渲染既不受該設置的控制,也不會在光照貼圖中顯示。背面使用與正面相同的自發光和漫反射設置反射光線。(該功能也可在Unity 5.6中使用)
實時陰影改進
咱們優化了在穩定模式下,級聯定向光源陰影投射器的選擇。這意味着生成陰影貼圖時會產生更少的Draw Call。這增益是與場景和配置相關的。例如,在四個級聯光的狀況下,能夠看到Draw Call數量顯著降低。根據太陽/攝像機的方向,場景中能夠減小50%的陰影投射器。下面是維京村莊的一個例子:
下面的場景在Unity 5.6中有5718個陰影投射器。
在Unity 2017.1中,相同的場景,只有4807個陰影投射器。
Unity 2017.1還實現了實時陰影的Percentage Closer Filtering (PCF)。每一個像素的深度值都是從當前像素周圍的陰影貼圖中取樣,並全部的採樣值進行比較。這使得光和影之間的線條更加平滑。您能夠在下圖中看到對比:
除了實時陰影改進,Shadowmask和Distance Shadowmask光照模式如今已成爲Quality Setting中的參數,能夠在運行時進行修改而無需任何成本。例如,能夠在室內使用Shadowmask (實現柔和的陰影),並在相同關卡中的戶外場景切換至distance Shadowmask。它也能夠做爲一個質量設置項。
咱們還添加了Custom Render紋理做爲渲染紋理的擴展,能夠很方便地用着色器來更新紋理。這有助於實現各類複雜的模擬,好比焦散光、雨滴漣漪模擬,牆面液體噴濺等等。它還提供了一個腳本和着色器框架,以便進行更復雜的配置,好比局部或多階段更新,不一樣的更新頻率等等。
有了新添加的LineUtility類和LineRenderer.Simplify函數,如今能夠優化線條,用LineUtility建立由簡單形狀組成的簡化版本。
使用Metal/OpenGL ES3實現iOS上的Deferred Rendering
咱們爲A8芯片和之後的iOS設備啓用了一個使用Metal和OpenGL ES 3.0的延遲渲染路徑。當使用延遲着色時,可以影響GameObject的燈光數量是沒有限制的。全部的燈光都是按像素計算的,這意味着它們都能與法線貼圖進行正確的交互等等。此外,全部的燈光均可以有剪影和陰影。
粒子系統改進
咱們引入了精靈集成,粒子碰撞力(能夠推進碰撞器),大量形狀方面的改進,包括一個新的形狀類型,噪音模塊增長了新選項,以及其餘一些較小的特性和加強。由於增長了新的控制和約束,例如速度與對齊,使得在2D中使用粒子更加輕鬆。可使用粒子來得到比以往更多的特效和動畫效果,包括光線的線條和尾跡。
經過Texture Sheet Animation模塊,咱們在粒子系統中增長了對精靈使用的支持。這使粒子系統能更好地進行了圖集處理和批處理,同時也在粒子系統中增長了大量與精靈相關的特性,例如不一樣大小的動畫幀,以及每幀的軸心點。
噪音模塊提供了新的選項,能夠更好地將噪音應用於粒子效果中。這個功能在Unity 5.5中第一次實現,噪音是被應用到粒子的位置屬性。在2017.1中,咱們能夠將噪音應用到更多的地方:
-位置
-旋轉
-大小
-使用Custom Vertex Streams的着色器(很是適合製做UV失真效果!)
在粒子系統形狀模塊的碰撞模式中,咱們引入了一個新的甜甜圈粒子發射形狀和編輯模式。模塊內的Transform能夠爲粒子發射的形狀應用自定義位置、旋轉和縮放。
其餘的改進還包括將粒子與速度方向對齊的能力,以及容許在局部空間系統使用Emit over Distance。邊緣粒子發射如今更加靈活,能夠選擇用來產生粒子的邊緣厚度。
粒子如今也可使用碰撞模塊對碰撞器進行施力。
Windows Store如今更名爲Universal Windows Platform
Unity如今支持Windows商店的Universal Windows Platform(UWP)應用模式,支持爲Xbox One、Windows 十、Windows Phone 10和HoloLens進行構建。
請注意,對Windows混合現實PC設備的支持將在今年晚些時候發佈。
咱們增長了對UWP的多顯示支持,如今Unity播放器二進制文件已作數字簽名,增長了額外的一層安全性,能夠防止對Unity運行時二進制文件進行篡改。
最後,咱們取消了對Windows 8.1和Windows Phone 8.1應用的支持,Unity 5.6是最後一個支持這兩個平臺的版本。
索尼PS4的視頻播放器
咱們在Unity 5.6中引入了一個全新的視頻播放器,在Unity 2017.1中正式加入了對索尼PS4的支持,從而完成了對跨平臺的支持。PS4的視頻播放器使用索尼的AvPlayer庫來加速h.264流的解碼。解碼h.264流(PS4的推薦格式)時,CPU開銷很是低。能夠同時對最多8個併發h.264流進行解碼。它還支持對webm容器中的VP8格式流進行軟件解碼(更高的CPU開銷)。最後,它支持多種視頻渲染模式(直接渲染到攝像機的近/遠平面,做爲材質覆蓋,或渲染紋理),音頻流能夠直接輸出或發送到音頻源進行混合。
底層原生插件渲染擴展
咱們已經擴展了底層渲染插件API,並提供了一些很酷的新特性:
-如今能夠將用戶數據發送到回調函數。
-咱們已經擴展了插件將接收回調的可能事件列表。
-咱們在着色器編譯器進程中添加了鉤子,能夠在發送到編譯器以前對着色器打補丁。支持建立自定義關鍵字所控制的自定義變體。
-要想了解這些擴展的威力,請查看NVIDIA的VRWorks包,它是實現這一切的基石。
VR: NVIDIA VRWorks
如今,在Unity 2017.1中,NVIDIA VRWorks經過如下特性,爲虛擬現實提供了一種全新高度的視覺保真度、性能和響應能力:
-Multi-Res Shading是一種用於VR的創新性渲染技術,它可使圖像的每一部分都能渲染在一個與鏡頭矯正圖像像素密度相匹配的分辨率上。
-Lens Matched Shading使用NVIDIA基於Pascal的GPU的新Simultaneous Multi-Projection架構,爲像素着色提供潛在的性能改進。
-Single Pass Stereo使用NVIDIA基於Pascal的GPU的新Simultaneous Multi-Projection架構,僅對幾何體進行一次繪製,便可在雙眼視圖同時投射相同幾何體。
-VR SLI爲虛擬現實應用程序提供更高的性能,其中兩個GPU能夠被指派給特定眼睛,極大地加速立體渲染。
爲了更好地利用這些改進,應該在PC上使用GeForce 9系列或更高的GPU來進行回放。能夠訪問Asset Store資源商店下載NVIDIA VRWorks for Unity。
發佈說明
與往常同樣,請查閱發佈說明,以瞭解新特性、改進和修復的完整列表。
以上內容來源Unity官方中文社區,原帖地址:http://forum.china.unity3d.com/thread-25171-1-1.html。
本文僅作轉載和整理。
by:蔣志傑