天天看點

【翻譯】Unity2017.2.0f3 版本釋出說明目錄

文章目錄

  • 目錄
    • 作業系統改變
    • 功能
    • **API Changes** 和 **Fixes** 不再列出,各位若有興趣可以去官網看看~

目錄

本文翻譯自官方文檔2017.2.0f3 Release Notes (Full. Diff from f2 at end):

作業系統改變

  • 移除對iOS 6.0的支援。現在最低支援7.0版本。

功能

  • 2D:新增 Tilemap。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-f0BTbCIW-1590483620034)(https://unity3d.com/sites/default/files/2017_2_feature_tilemap.png)]

  • 導入資源(Asset Import):新增對從FBX導入的自定義動畫屬性的支援。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-DgfSx2to-1590483620038)(https://unity3d.com/sites/default/files/2017_2_feature_animated_custom_properties.png)]

  • Asset Import:新增對從FBX導入的Stingray材質的支援。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-qCNTMEZk-1590483620040)(https://unity3d.com/sites/default/files/2017_2_feature_stingray_pbs_1.png)]

  • 全局光照(GI):新增可以為每一個對象用于拼接連續光照貼圖(Progressive Lightmapper)的光照接縫(lightmap seam stitching)。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-fZqa4V1M-1590483620042)(https://unity3d.com/sites/default/files/2017_2_feature_stitching_light.gif)]

  • GI:新增實時全局照明分析器(profiler for Realtime Global Illumination)。
  • GI:新增在連續光照貼圖中對雙面材質(double-sided materials)的支援。
  • 新增一種材質設定,使得光線可以和背面(backfaces)互相影響。
  • 被其他遊戲物體看見時,背面不會算作失效。
  • 背面渲染不受此設定控制, 并且其不會在光照貼圖中呈現。
  • 背面使用和正面(frontfaces)相同的自發光率(emission)和反照率(albedo)來反射光線。
  • GI:新增在連續光照貼圖中對每個對象投影(cast)以及該對象接收投影(receive)的支援。對于"投影",現在隻支援"On"和"Off"選項。
  • 繪圖(Graphics):實施(Implemented)Display-P3 色域以支援iOS和MacOS。在Player Settings中新增"色域"(Color Gamut)屬性最終會覆寫其他具有寬色域支援的平台。
  • 多玩家(Multiplayer):新增用于傳遞大量資訊的"服務品質"(QoS)選項:可靠的或不可靠的,以及,非有序的(碎片化)或有序的(有序碎片化)(reliable or unreliable, and un-ordered (fragmented) or ordered (fragmented sequenced))。
  • OSX:新增對于macOS獨立環境下,建立工程時所需"Retina"顯示技術的支援。
  • 打包管理器(Package Manager):顯示(Exposed)允許内部元件(internal components)比編輯器(Editor)更加頻繁更新的API。這是執行Unity打包管理器的第一步。 我們正在采取一種漸進的方法,将系統整合到Unity生态系統中。随着時間的推移,它将會有更多的功能。對于這次,第一個版本,我們避免暴露面向使用者的功能。
  • 粒子(Particles):新增"Stop Action"選項,進而允許粒子系統(Particle Systems)在結束播放時摧毀或失效。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-EQkZWKoI-1590483620044)(https://unity3d.com/sites/default/files/2017_2_feature_particlesystem_stopaction.png)]

  • Particles:新增"線性阻力"(Drag support)。新的選項在生命周期子產品(Lifetime Module)中的極限速度(Limit Velocity) 裡。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-rO55OabI-1590483620044)(https://unity3d.com/sites/default/files/2017_2_feature_particlesystem_lineardrag.gif)]

  • 服務(Services):性能報告服務(Performance Reporting Service):新增支援Android本地崩潰。
  • 時間線(Timeline):新增支援動畫軌迹(Animation Tracks)上的動畫層(Avatar Masks)。
  • 視訊(Video):新增支援非正方形像素的寬高比(Added pixel aspect ratio support for non-square pixels)。
  • WebGL:為WebGL 2.0新增線性渲染(linear rendering)。
  • XR:為使用金屬圖像(Metal graphics)的64位Mac應用新增openVR支援。
  • XR:在編輯器内新增Vive頭戴顯示器(Vive HMD)的某些方位用于模拟,而無需使用實體頭戴顯示器(physical HMD)。
  • 在"Player Settings"中使用"Mock HMD - Vive"虛拟現實SDK來激活此功能。
  • 模拟頭盔(mock HMD)使用了與Vive一緻的:非對稱投影矩陣(asymmetric projection matrix),隐秘閉塞網格(hidden occlusion mesh),視野(field of view),螢幕高寬比(aspect ratio)以及眼部紋理大小(eye texture size)。
  • 您可以通過多、單通道渲染路徑使用mock HMD。它在編輯器中呈現為分屏立體顯示。
  • XR:當工程目标為Android7.0及以上裝置時,新增對Google Arcore AR技術的支援。有關更多資訊以及如何啟用,請參見我們的部落格。
  • XR:新增對Daydream View頭盔視訊所需視訊同步投影(Video Async Reprojection)的支援。
  • 視訊同步投影允許app無需經過主要的Unity渲染循環,把視訊幀直接回報給Google VR異步投影系統。
  • 提供了一條直接渲染視訊的快速通道,無論是對于Unity正在渲染的幀率還是跳過紋理過濾(Texture filtering),都有了更高品質的輸出。
  • 還有一個選項允許使用受保護的記憶體,對于使用者來說需要提供DRM保護内容。
  • XR:為Windows Mixed Reality新增VR SDK目标支援。這擴充了Unity對HoloLens的支援,使其能夠更普遍支援Windows MR,暨桌面(desktop)和HoloLens。
  • XR:新增TrackedPoseDriver元件,它可以被添加到一個game object中進而比對AR裝置、VR頭盔或VR控制器的位置和旋轉旋轉位置比對的VR頭盔,或VR控制器。
  • XR:現在,當使用DirectX 11渲染API時,可支援桌面立體執行個體化(Stereo Instancing)(也被稱為單向執行個體化(single-pass instanced))。立體執行個體僅支援正向渲染。
  • XR:Unity編輯器已基本支援EditorVR。請期待後續有關2017.2 EditorVR相容性公告。
  • XR:Windows MR耳機現在支援在編輯器中播放。
  • XR:引入本地內建的Vuforia AR平台。可以通過Unity Download Assistant進行安裝,并在PlayerSettings/XR下開啟 Vuforia支援。更多資訊請見https://developer.vuforia.com。

##向後相容性中斷更改(Backwards Compatibility Breaking Changes)

  • 腳本(Scripting):現在,UnityEngine.dll為每一個UnityEngine子產品分出了單獨的dll。

##一些變化

  • Android:『作為ADT項目導出』現已過時。
  • Android:當垂直同步(v-sync)關閉時,更改預設的幀頻(Application.targetframerate = -1)為30,類似iOS。
  • Android:對"AudioMixer ducking"做了如下改進:
  • 優化CPU性能。
  • 改變行為以避免數量接近每個通道的最大值(maximum level)。
  • 編輯器(Editor):編輯器在批處理模式下運作時APIUpdater不再自動運作。使用 -accept-apiupdate 指令參數來擷取更多資訊。
  • Editor:改變了多人協作工具欄(Collab toolbar)中『成員』(“members”)按鈕的行為。現在可以從網頁的"Dashboard"打開它,來添加/删除項目成員。
  • Editor:場景在運作模式(Play mode)被暫停時,Editor的GUI工具提示(tooltips) 不再暫停。
  • Editor:減少腳本編譯編輯日志的冗長資訊。
  • Editor:2017版Unity編輯器需要新的證書版本。訂閱密鑰将被更新,但此編輯器不再接收5.x許可密鑰。如果您隻有5.x證書,請浏覽 https://store.unity.com/ 或聯系您的銷售代表(sales representative)以獲得相容2017的證書。
  • 繪圖(Graphics):當您對光線使用自定義陰影分辨率時,此分辨率不再固定,是以如果需要,其陰影貼圖(shadowmap)可以達到8K。
  • 證書(Licenses):已更新FBX以滿足FBX SDK的許可要求(見FBX SDK 2015許可和服務協定)。
  • Package Manager:将project packages從 /UnityPackageManager/Project 移到了 /UnityPackageManager。
  • Scripting:編輯器新增MonoBehaviour.OnValidate選項可作為MonoBehaviour添加給GameObject。
  • Scripting:序列化:不再支援opposite-endinanness AssetBundles服務。
  • Scripting:即使其他腳本有編譯錯誤,編輯器也可以在啟動時加載預編譯的托管程式集(precompiled managed assemblies)(.dll)了。
  • Scripting:InitializeOnLoad現于反序列化(deserialization)之後運作(invoke)。請看更新詳情(879044)。
  • UI:标記遺留的(legacy)(Unity 1.0) UI 系統元件(GUILayer, GUIText 和 GUITexture)為注釋(as deprecated)。現在GUILayer元件不會被預設添加到錄影機中。
  • 通用Windows平台(Universal Windows Platform):将通用Windows平台上的預設背景腳本改為il2cpp。
  • XR:Camera.stereoMirrorMode現已過時。

##改進

  • AI:提升了在雕刻(carve)之後的同步導航網格磚(synchronizing NavMesh tiles)性能。
  • AI:您現在可以使用導航網格編輯器助手(NavMeshEditorHelpers)。使用DrawBuildDebug()與NavMeshBuilder API從建構(build)過程中有選擇性地收集和可視化調試資料。
  • Android:現在可以呈現超寬屏裝置的全屏樣式。
  • Android:如果需要,允許使用 extractNativeLibs = false 标志(flag)。
  • Android:顯著改善加載大型預制體的性能(Resources.Load* 或 AssetBundle.LoadAsset* 等API)。(904652)
  • Android:現在可以在編輯器(Editor Settings)設定中配置後端ETC紋理壓縮程式,其具有不同的品質/壓縮速度權衡。
  • Android:UI:在Android Player Settings > Resolution & Presentation中新增"Aspect Ratio Mode"選項。
  • Animation:新增複制和粘貼動畫狀态機(Animator State Machine)中的過渡參數(transition parameters)的能力。
  • Asset Import: 顯示(expose)用于從**.FBX和SketchUp檔案提取嵌入紋理的一個公開API。嵌入Asset**中的材質将自動更新以引用提取的紋理。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-QIiELJXi-1590483620045)(https://unity3d.com/sites/default/files/2017_2_feature_extract_textures.png)]

  • Asset Import:對Avatar Mask和Transform Mask UI做了一些小小的改進。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-V4BW15Jf-1590483620046)(https://unity3d.com/sites/default/files/2017_2_feature_avatar_masks.png)]

  • Asset Import:導入過程中,并行(parallelize)了動畫剪輯關鍵幀(Animation Clip keyframe)的減少。
  • Asset Import:更新SketchUp SDK到17.0版本。(782948)
  • Audio:新增功能使得可以基于AudioSettings.GetSpatializerPluginName和AudioSettings.SetSpatializerPluginName兩個腳本擷取和設定音頻定位(audio spatializer)。
  • DX12:本地渲染插件改進:
  • 顯示/實作本地RenderBuffer資源檢索。
  • 修複多線程問題。
  • Editor:為Profiler視窗右上角的上拉菜單添加了切換到色盲模式(color-blind-friendly mode)。
  • Editor:為iOS、Android和獨立平台的Build Player視窗顯示LZ4壓縮設定。
  • Editor:為剖面圖(Profiler charts)進行可用性改進:
  • 您現在可以切換所有系列類型
  • 柱狀圖(Stacked chart)系列現在有明确的重新排序提示
  • 堆疊圖(Stacked plots)現在呈現為純色
  • Editor:Unity Troubleshooter允許使用者觀察以前通過Unity Knowledge庫所報告的問題和對于類似問題的搜尋。
  • GI:使用漸進的光照貼圖(Progressive Lightmapper)時為GI新增多孔算法(A-Trous)和新的邊緣感覺濾波器(edge-aware filter) 。
  • GI:通過把I/O檔案中的GI部分檔案移動到加載線程中,新增對預先計算實時GI資料的異步加載。在公共API中顯示DynamicGI.IsConverged使您能夠瞧瞧聚光燈會聚時發生了什麼。為加載新增時間片段化(timesliced)反照率發射渲染(albedo-emission rendering)。 (710503, 790887, 815033)
  • GI:新增對Progressive Lightmapper中LOD渲染的支援。
  • GI:新增對使用更低mip levels光照貼圖内容填充空區域(推挽式擴張(push-pull dilation))的更新。此更新可修複繪制光照貼圖時可見暗像素(visible dark pixels)周圍幾何邊緣的問題。在可獲得更低的MIPs時,黑暗背景紋理出血(bleeding)會發生這樣的問題。
  • GI:高動态範圍圖像自發光(HDR emission):為Realtime和Baked GI啟用16位浮點型自發光。Baked GI的輸出仍然被RGBM範圍所限制。将高動态範圍圖像顔色選擇器(HDR color picker)的限制從99增加到64K。
  • GI:地形樹現在可以投影到Terrains上的已烘焙貼圖。地形樹探測器(Terrain Tree Probes)現位于樹冠頂部,以確定探測器最終不會進入樹幹内部(Terrain Tree Probes are now in the top of the tree canopy to make sure Probes don’t end up inside the tree trunk)。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-LZUpWGo6-1590483620047)(https://unity3d.com/sites/default/files/2017_2_improvement_lightmap_baking_terrain_trees.png)]

    (685764)

  • GI:将Enlighten SDK更新到3.09。自3.08p1以來新的:

    改進:

  • 現在可以為三角形的每一個投射直射光陰影的面設定材質。bug修複:
  • 修正了一個錯誤:将更新管理器限制器設定為大于0的值,會對輸入的照明緩沖區産生不正确的讀取。
  • 修正了 當提供輸入網格具有非常大的貼圖紋理分布(UVs)時,使用**IPrecompute::PackGeometry()**會崩潰的問題。
  • 修正了 當記憶體用完時,使用**IPrecompPackedGeometry::Load()**會崩潰的問題。
  • 修正了 未初始化的資料能夠在**WriteDataBlockForInPlace()**上序列化及其相關功能的一些問題。
  • Graphics:在Mesh Renderer中新增“動态被遮擋體(Dynamic Occludee)”設定,來控制動态物體是否應該跳過遮擋剔除(occlusion culling)。(883644)
  • Graphics:在基于Vulkan,D3D12,PS4和Xbox One的計算上新增加速骨骼動畫(GPU Skinning)。
  • Graphics:為"Player Settings"新增“金屬限制後備緩沖區使用(Metal Restricted Backbuffer Use)“。其允許在非預設裝置環境上使用改進後的性能。
  • Graphics:Frame Debugger的改進:
  • 紋理着色器屬性提示中的大小、格式和深度。
  • 模闆狀态。
  • Graphics:改編後的Rendering.CommandBuffer内部減少了主線消耗。
  • Graphics:紋理導入(Texture Importer):當紋理類型(“Texture Type”)設定為"Normal map"時可使用BC5壓縮格式。使特定平台Texture Importer面闆底部能夠設定BC5格式。
  • iOS:為Xcode增加了一個API來檢索現建構階段所有目标。
  • iOS:為iOS目标生成通知(Notification)和聚光燈(Spotlight)圖示。另外,改進了PlayerSettings.下的GetIconsForTargetGroup、GetIconSizesForTargetGroup以及SetIconsForTargetGroup方法:取用一個可選的IconKind參數來獲得/設定具體類型的圖示。(894113)
  • iOS:使用Xcode的API來實作嵌入架構。
  • iOS:改進了金屬(Metal)的渲染線程排程。
  • iOS:多線程渲染選項現在可用于iOS / TVOS。
  • Kernel:新增完成事件,使所有的值都傳回AsyncOperations.
  • Launcher:整合各類社交登入(Social Sign-On)到啟動視窗(Launcher window)。
  • Particles:為場景視圖(Scene View overlay)新增重新開機按鈕。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-Jc8MuSMe-1590483620048)(https://unity3d.com/sites/default/files/2017_2_improvement_particlesystem_restart.png)]

  • Particles:為粒子系統子發射器子產品(Particle System Sub-Emitter module)新增“繼承生命周期(Inherit Lifetime)”選項。
  • Particles:猝發發射(Burst Emission) 現在支援曲線樣式計數。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-nAHFoYEs-1590483620049)(https://unity3d.com/sites/default/files/2017_2_improvement_particlesystem_burstcurve.png)]

  • Particles:現已可自定義編輯Module label,允許您給它們提供上下文名稱。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-Y7VevF1H-1590483620050)(https://unity3d.com/sites/default/files/2017_2_improvement_particlesystem_customlabels.png)]

  • Physics:現在可以推遲因修改Transform所引起的3D Physics變化了。這些自動同步會在實體模拟運作前進行(They automatically synchronise before the physics simulation runs)。您可以使用Physics3D.autoSyncTransforms以及**Physic3D.SyncTransforms()**來控制此行為。

    [外鍊圖檔轉存失敗,源站可能有防盜鍊機制,建議将圖檔儲存下來直接上傳(img-XMZUO0Ya-1590483620050)(https://unity3d.com/sites/default/files/2017_2_feature_joint_angular_limit_handle.gif)]

  • Physics:Collision2D.contacts數組現在是在通路時建立的,在使用之前它不會配置設定任何記憶體。
  • Plugins:新增對插件内Texture内容更新的渲染指令緩沖回調(D3D11/Metal/GLES)。
  • Plugins:本地渲染插件(Native Rendering Plugins)現在支援Nintendo Switch。
  • Services:更新Unity Ads到2.1.1。
  • Shaders:減少了計算着色器的導入時間,消除了一些編譯器逾時問題。
  • Shaders:減少了具有許多類似shader_feature/multi_compile variants表面着色器的導入時間。
  • Substance:新增對V6引擎的支援;能夠使用物質設計器(Substance Designer)的下的所有節點。
  • UI:引進了一個用于所有UI着色器的着色器關鍵詞,用以控制矩形裁剪(rect clipping)。現在僅在Mask元件啟用時可以進行矩形裁剪。當不使用Masks時,UI性能将大大提高。 (784238)
  • Universal Windows Platform:IL2CPP腳本後端現在預設使用 .NET 4.6 API 相容等級(compatiblity level)。
  • VR:更新Oculus版本至1.14。
  • Web:UnityWebRequest現在可以使用DownloadHandlerFile來下載下傳并以低記憶體占用存儲檔案到硬碟中。
  • Windows:改進了Windows Player中的崩潰對話框;使其擁有更多的細節,并能夠提示使用者打開崩潰報告的Explorer視窗。
  • Windows:将玩家可執行性(player executable)分為兩塊:一種是簽署了擁有所有引擎代碼的unityplayer.dll,另一種是在啟動時調用這個DLL的包裝器可執行檔案。executable的源碼在Editor\Data\WindowsStandaloneSupport\Source\WindowsPlayer 中。若您已安裝"Common Tools for Visual C++ 2015"和"Windows XP Support for C++",您可以通過這兩個工具重建它。
  • XR:提高了Daydream和Gear VR應用程式的渲染性能。
  • XR:改善了對XR應用的暫停處理。當HMD被移除時需要暫停的應用,即使視窗對焦變化也不會再恢複,反之亦然(Apps which need to pause when the HMD is removed no longer resume if the window focus changes, and vice-versa)。
  • XR:在用于WindowsMR的各種VR HMD上,您現在可以調用SetTrackingSpaceType及令TrackingSpaceType.RoomScale的y值=0,來設定地面。
  • XR:更新了界面、用于GestureRecognizer和InteractionManager (UnityEngine.VR.WSA.Input)的新資料。一些相關API surface有了非常大的改變,并且很快會與大家見面(Some of the API surface for this has breaking changes on the way and will land soon)。
  • XR:UnityEngine.Experimental.VR.Boundary.TryGetGeometry現在可以在Windows Mixed Reality headsets正常工作。

API Changes 和 Fixes 不再列出,各位若有興趣可以去官網看看~

繼續閱讀