Unity 5.6测试版发布
Unity 5.6测试版发布
作者:Alex Lian 原文
润稿:Kelvin Lo
Unity5.6 测试版本现已发布。包括Unity 个人版在内的所有Unity开发者均可免费下载试用。最新发布的测试版改进了编辑器和2D功能、图形效能更佳、加入新的影片播放器,并新增对Facebook Gameroom和Google DayDream平台的支援。
我们期待你下载Unity 5.6 测试版,参与测试并提供反馈,帮助Unity在未来的测试周期能产出更完美的版本。
可以从这里看Releasenote
Unity5.6 测试版有哪些新功能?
支持Vulkan - 图形效能更进一步
Vulkan是新一代图形计算API,能对主机和移动平台上新一代的GPU进行高效的和跨平台的存取。它被设计为可以利用多核心CPU并行多个线程。这代表提高指令周期的同时也减少了内存开销和CPU负载,使CPU可以进行其他的运算和渲染。在没有处理Vulkan API的任何细节特性的情况下,总体上可以使Unity的渲染效能实时提升高达60%。
在Unity 5.6 测试版中,Vulkan使图形显示效能更上一层楼,在最终发布的正式版中Vulkan会支持Android、Windows、Linux以及Tizen平台。
图形改进:Metal Compute,Instancing,粒子特效等
Unity 5.6 测试版还包含很多图形方面的整体改进,包括粒子系统和GPU Instancing等等。
使用新的“DrawMeshInstancedIndirect”函数,可以透过ComputeBuffer提供的参数使用instanced着色器绘制同一网格的多个实例。这种透过脚本渲染实例的新方式几乎没有CPU开销。
在之前的Unity 5.5,我们为粒子系统新增可以从脚本和着色器中存取自定义数据。Unity 5.6 测试版延伸了粒子系统,支持在Inspector面板中直接设定,可以更方便定义曲线和颜色,这样就可以透过脚本和着色器来驱动自定义逻辑。另外,模块中定义的颜色也可以使用HDR(高动态范围),这是之前的粒子系统所不支持的。
新增了基于物理的渲染材质验证器使Albedo和Specular值在可接受的有效范围内,Albedo值也可以针对开发者自定义的亮度范围进行验证。
Unity 5.6 测试版新增了iOS和Mac OS平台上的Metal支持。与Unity里其他图形API一样,计算着色器使用HLSL语言编写,并且被转换为Metal着色语言(目前仅限Metal V1.1)。
Unity 5.6 测试版中的动画系统支持跟踪视野位置,以便AnimatorController的状态机在切换时保持位置,避免不必要的滑动。
最后,Texture2D新增了EncodeToEXR选项。可以将任意HDR贴图存成EXR文件保存到硬盘上。
改善2D游戏开发流程的新功能
Unity一直致力于提供更多的2D支持,并在Unity5.6 测试版中发布了几个新的2D功能。
新的Axis Distance Sort能够将 Transparency Sort Mode(透明度排序模式)设定为自定义轴来解决Z轴排序问题。使用Sorting Group组件,可以在同一个Sorting Layer内将一组对象和其他对象分开来渲染。它会确保同一组下渲染的所有子对象一起被排序,这对管理复杂的场景非常有用。
新增Outline Editor功能,Sprite编辑器窗口支持自动产生特定细节等级的细分曲面,或者手动编辑Sprite网格形状。还对2D物理进行了大量改进,包括2D物理投射(2D Physics Casting)API和新的2D Contacts API,使用新的CompositeCollider2D 可以将多种不同类型的碰撞体合并为一个组合碰撞体。
我们还引入了2D技术9-Slice,不需要准备多张图片,支持重复使用可变尺寸的图片。它可以在显示尺寸改变时拉伸或重复特定图像区域,是一种仅需很少的贴图内存就可快速建立游戏平台或背景的技术。
2D碰撞体的粒子碰撞程序使用新的SIMD库进行完全重写,有了显著的效能提升。
支持4K高清和全景影片播放器
Unity 5.6 测试版以效能为考虑开发了一个全新的影片播放器。能够流畅播放4K影片之外同时也支持多平台,可以在编辑器里或各种不同平台上使用。它为相当广泛的平台提供了H.264/AAC的硬件级支持,在H.264/AAC不可用或被手动禁用的状况下也可以使用VP8/Vorbis软解实现,未来还会新增更多译码器(Codec)支持。影片播放器简单易用,只需要在游戏对象上新增一个组件即可在场景中播放,提供沉浸式互动影片体验。您可以在Unite 2016的Keynote主题演讲中看到它的Demo。
UnityCollaborate多人协作新功能
首先为还不熟悉Unity Collaborate多人协作的人做一个简单介绍:它是一个云端服务,可以让小型团队保存、分享以及同步他们的Unity项目,保持开发成员能随时更新项目内容。它方便易用,团队中的所有成员都可以参与项目的开发,不受地理和角色的束缚,能大量提升工作效率。
我们基于早期测试版本的测试回馈,新增了一些呼声最高的功能例如部分发布功能,允许开发者选择性发布档案。在之前的版本中,你只能一次推送所有已修改檔。
使用忽略档案设定(Ignore File),你可以忽略掉项目中不希望被发布的档案和目录。新的回版功能(Rollback)只需要点几次鼠标即可将项目退回到某个旧版本。
Unity效能报告现已支持iOS
Unity Performance Reporting效能报告拥有跨设备跨平台收集应用程序错误信息的能力,因此您和您的团队可以更方便地实时找到错误。Unity 5.6 测试版本中的效能报告(Performance Reporting)可以捕获并汇报iOS游戏中的当机信息。将来还会为更多平台提供支持。您可以随时在Unity项目中尝试使用Performance Reporting效能报告服务:无需写任何程序代码,仅需在服务(Service)窗口中打开“Performance Reporting”开关即可。
GoogleDaydream & Cardboard VR 支持
Unity 5.6 测试版原生支持Google Daydream平台。为了让平台效能最佳且延迟最低,整合了Daydream NDK来改善Daydream平台的异步投射(asynchronous reprojection)以及VR效能模式的体验。
与Google I/O上发布的Google VR SDKfor Unity相比,Unity 5.6 测试版拥有更简化的工作流程,大量的效能优化以及显著的延迟降低。无需任何Prefab、脚本或设定,只需启用VR并将Daydream设为目标平台即可开始您的虚拟世界创作之旅。
为了更贴近VR玩家,我们也将它设计能简单切换VR模式。你的APP也能原生支持Google Cardboard,设定支持平台为Google Cardboard后项目就可以支持一些型号较旧的硬设备,触及更多的用户。目前Cardboard仅对Android开放,iOS Cardboard将在未来的版本中支持。
更多细节可以参考Unite2016上的演说
支援Facebook Gameroom
Facebook的Gameroom带来了更方便的游戏开发体验,方便开发者将高质量的游戏带到PC平台上来,同时充分发挥CPU及GPU的潜力,创造出引人入胜的游戏。
透过测试版你可以将项目发布到Facebook Gameroom,或利用Unity的WebGL平台支持发布在Facebook网站上。
Unity已为您准备好一切,从内容分享到应用IAP等等,你甚至可以在Unity编辑器中直接将程序上传并在Facebook上托管。
物理除错可视化
有时很难知道场景中哪些物体是否应该带有碰撞行为,尤其是在渲染器和碰撞体并不同步的情况下。为了让你快速检查场景中几何体的物理碰撞信息,Unity 5.6 测试版提供了一个新的除错模式。它可以在Unity场景中帮碰撞几何提供较直观的参考,能够让你快速找到相关的碰撞体。它也可作为效能分析工具,因为它可以隐藏所有非启动状态的刚体,也能将所有破面的网格碰撞体(MeshCollider)显示出来。