您的位置:首页 > 移动开发 > Unity3D

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

2017-11-01 10:08 302 查看
目录
操作系统改变

功能

向后兼容性中断更改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[/b])。

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):为Realtime和[b]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)。



(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 不再列出,各位若有兴趣可以去官网看看~

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  unity 文档 更新 翻译