【翻译】Unity2017.2.0f3 版本发布说明

  • 目录
    • 操作系统改变
    • 功能
    • 向后兼容性中断更改Backwards Compatibility Breaking Changes
    • 一些变化
    • 改进
    • API Changes 和 Fixes 不再列出各位若有兴趣可以去官网看看

目录

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


操作系统改变

  • 移除对iOS 6.0的支持。现在最低支持7.0版本。

功能

  • 2D:新增 Tilemap

  • 导入资源(Asset Import):新增对从FBX导入的自定义动画属性的支持。

  • Asset Import:新增对从FBX导入的Stingray材质的支持。

  • 全局光照(GI):新增可以为每一个对象用于拼接连续光照贴图(Progressive Lightmapper)的光照接缝(lightmap seam stitching)。

  • 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)在结束播放时摧毁或失效。

  • Particles:新增”线性阻力”(Drag support)。新的选项在生命周期模块(Lifetime Module)中的极限速度(Limit Velocity) 里。

  • 服务(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兼容性公告。
  • XRWindows 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)了。
  • ScriptingInitializeOnLoad现于反序列化(deserialization)之后运行(invoke)。请看升级详情(879044)。

  • UI:标记遗留的(legacy)(Unity 1.0) UI 系统组件(GUILayer, GUITextGUITexture)为注释(as deprecated)。现在GUILayer组件不会被默认添加到摄像机中。

  • 通用Windows平台(Universal Windows Platform):将通用Windows平台上的默认后台脚本改为il2cpp

  • XRCamera.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纹理压缩程序,其具有不同的质量/压缩速度权衡。
  • AndroidUI:在Android Player Settings > Resolution & Presentation中新增”Aspect Ratio Mode“选项。

  • Animation:新增复制和粘贴动画状态机(Animator State Machine)中的过渡参数(transition parameters)的能力。

  • Asset Import: 显示(expose)用于从.FBXSketchUp文件提取嵌入纹理的一个公开API。嵌入Asset中的材质将自动更新以引用提取的纹理。

  • Asset Import:对Avatar MaskTransform Mask UI做了一些小小的改进。

  • Asset Import:导入过程中,并行(parallelize)了动画剪辑关键帧(Animation Clip keyframe)的减少。

  • Asset Import:升级SketchUp SDK到17.0版本。(782948)

  • Audio:新增功能使得可以基于AudioSettings.GetSpatializerPluginNameAudioSettings.SetSpatializerPluginName两个脚本获取和设置音频定位(audio spatializer)。

  • DX12:本地渲染插件改进:
    • 显示/实现本地RenderBuffer资源检索。
    • 修复多线程问题。
  • Editor:为Profiler窗口右上角的上拉菜单添加了切换到色盲模式(color-blind-friendly mode)。
  • Editor:为iOS、Android和独立平台的Build Player窗口显示LZ4压缩设置。
  • Editor:为剖面图(Profiler charts)进行可用性改进:
    • 您现在可以切换所有系列类型
    • 柱状图(Stacked chart)系列现在有明确的重新排序提示
    • 堆叠图(Stacked plots)现在呈现为纯色
  • EditorUnity 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 LightmapperLOD渲染的支持。
  • GI:新增对使用更低mip levels光照贴图内容填充空区域(推挽式扩张(push-pull dilation))的更新。此更新可修复绘制光照贴图时可见暗像素(visible dark pixels)周围几何边缘的问题。在可获得更低的MIPs时,黑暗背景纹理出血(bleeding)会发生这样的问题。
  • GI:高动态范围图像自发光(HDR emission):为RealtimeBaked 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)。

    (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:在基于VulkanD3D12PS4Xbox One的计算上新增加速骨骼动画(GPU Skinning)。
  • Graphics:为”Player Settings“新增“金属限制后备缓冲区使用(Metal Restricted Backbuffer Use)“。其允许在非默认设备环境上使用改进后的性能。
  • GraphicsFrame Debugger的改进:
    • 纹理着色器属性提示中的大小、格式和深度。
    • 模板状态。
  • Graphics:改编后的Rendering.CommandBuffer内部减少了主线消耗。
  • Graphics:纹理导入(Texture Importer):当纹理类型(“Texture Type“)设置为”Normal map“时可使用BC5压缩格式。使特定平台Texture Importer面板底部能够设置BC5格式。

  • iOS:为Xcode增加了一个API来检索现构建阶段所有目标。

  • iOS:为iOS目标生成通知(Notification)和聚光灯(Spotlight)图标。另外,改进了PlayerSettings.下的GetIconsForTargetGroupGetIconSizesForTargetGroup以及SetIconsForTargetGroup方法:取用一个可选的IconKind参数来获得/设置具体类型的图标。(894113)
  • iOS:使用XcodeAPI来实现嵌入框架。
  • iOS:改进了金属(Metal)的渲染线程调度。
  • iOS:多线程渲染选项现在可用于iOS / TVOS

  • Kernel:新增完成事件,使所有的值都返回AsyncOperations.

  • Launcher:整合各类社交登录(Social Sign-On)到启动窗口(Launcher window)。

  • Particles:为场景视图(Scene View overlay)新增重启按钮。

  • Particles:为粒子系统子发射器模块(Particle System Sub-Emitter module)新增“继承生命周期(Inherit Lifetime)”选项。
  • Particles:猝发发射(Burst Emission) 现在支持曲线样式计数。

  • Particles:现已可自定义编辑Module label,允许您给它们提供上下文名称。

  • Physics:现在可以推迟因修改Transform所引起的3D Physics变化了。这些自动同步会在物理模拟运行前进行(They automatically synchronise before the physics simulation runs)。您可以使用Physics3D.autoSyncTransforms以及Physic3D.SyncTransforms()来控制此行为。

  • PhysicsCollision2D.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 PlatformIL2CPP脚本后端现在默认使用 .NET 4.6 API 兼容等级(compatiblity level)。

  • VR:更新Oculus版本至1.14。

  • WebUnityWebRequest现在可以使用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:提高了DaydreamGear 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:更新了界面、用于GestureRecognizerInteractionManager (UnityEngine.VR.WSA.Input)的新数据。一些相关API surface有了非常大的改变,并且很快会与大家见面(Some of the API surface for this has breaking changes on the way and will land soon)。
  • XRUnityEngine.Experimental.VR.Boundary.TryGetGeometry现在可以在Windows Mixed Reality headsets正常工作。

API ChangesFixes 不再列出,各位若有兴趣可以去官网看看~

你可能感兴趣的:(笔记)