最新版Unity 5.6正式发布,也是Unity 5.x系列的最后一个版本。其中包括改进的2D功能,更好的图形性能,新的视频播放器,Progressive Lightmapper预览版,新的光照模式,以及对Facebook Gameroom和Google DayDream平台的支持。

两年前在GDC 2015上我们发布了Unity 5,今天发布的5.6正式为Unity 5.x画上句号。 我们希望您的项目将受益于5.6所包含的许多功能和改进。

现有用户点此获取Unity 5.6,新Unity用户,点击这里!

5.6亮点简述

照明方面的大量改进
5.6包括Progressive Lightmapper预览版,与当前的Enlighten解决方案相比,在你尝试不同的照明场景时可以提供即时反馈,并且迭代速度更快。 5.6还提供光照模式(Light Modes),为静态和动态对象提供各种实时和烘焙照明的混合方式。

改进的图形和GPU支持的功能
GPU Instancing可以以非常低的成本实现由许多同类对象构成的新类型特效,而Compute Shader可以将一些计算任务转移到GPU上。 而且,通过Apple Metal图形API,您设备上运行的游戏将可以直接利用芯片的原生性能来实现更多细节。

支持Vulkan
Vulkan在让渲染速度提高的同时,减少了驱动程序开销和CPU工作负载,这使得CPU可以更好地进行额外的计算或渲染,并增加了移动平台的电池寿命。

粒子系统大幅更新
5.6大大扩展了粒子效果的范围,为用户提供了更多的选择和控制。 此更新还显著提高了粒子系统的性能。

新的视频播放器
支持在所有平台上回放4K视频以及360度全景视频。

导航系统改进
改进的AI和Pathfinding工具(也称为NavMesh系统)可以操纵多个导航网格和代理。 而且,用于程序生成或动态加载内容的新工具可以为角色导航提供一系列全新的用例集和游戏选项。

新的2D工具和改进
Unity 5.6添加了一整套2D功能,可以为开发人员提供更多的控制,更容易创建复杂的2D对象。 新的2D物理相关的功能可以实现新的游戏玩法和效果,包括与2D对象交互的粒子效果。

TextMesh Pro
Unity资源商店中最出色的工具之一,现在可免费提供给5.3以上的用户,并将很快被原生集成到Unity中。 TextMesh Pro是具有动态视觉文字样式的高级文本渲染,同时大大提高了对文本格式和布局的控制。

性能报告和调试改进
除了异常报告之外,性能报告现在还会收集iOS的本机崩溃信息。 物理调试可视化和分析器改进使定位游戏中性能问题的源头更加容易。

新平台
无缝发布到FB Gameroom,以及Google Daydream,以及发布Cardboard应用到Android和iOS平台。

Unity Collaborate多人协作(测试版):
我们为发布更改添加了新的选项,以便更好地控制您的协作项目。

实验性支持WebAssembly
Unity 5.6加入了对WebAssembly的实验性支持,一种改善Unity WebGL应用体验的新型跨浏览器技术。

5.6新功能

Progressive Lightmapper(预览)
5.6最值得注意的功能之一是基于路径追踪的新解决方案Progressive Lightmapper。 它使烘焙照明可以快速迭代,并可以预测大概结束时间。 在5.6中,它将作为一个预览功能发布。

175026l0h0fq6csljafzs6.png

当我们推出Unity 5.0时,Enlighten取代Beast提供烘焙和实时全局照明(GI)。 然而,Enlighten不适用于烘焙照明的所有用例,因此需要Progressive Lightmapper提供解决方案。

我们希望提供一个解决方案,不仅可以为烘焙灯光带来很好的效果,还可为照明艺术家提供改进的工作流程,包括快速,可预测的迭代功能。

在以前发布的Unity版本中,对场景的更改需要重新做烘焙,并且只有烘焙完成后才能显示结果。 在5.0中, Enlighten允许我们把使用预计算获得的实时GI作为预览。

Enlighten在烘焙方面提供的功能是能够在过渡期间使用预计算的实时GI实时改变灯光并立即看到结果。 然而,对某些参数,材质或几何形状的修改仍然需要进行重新烘焙,在此期间您不会得到任何反馈,同时材质反照率和发光度却可以像灯光一样进行变动。

174240et1i6d7rtv6ig231.png 在Shadowmask模式下,混合灯光是实时的,静态对象投射的阴影被烘焙成阴影纹理和光线探测器。 从这些预计算的数据中收到来自静态对象的阴影。 来自动态对象的阴影通过阴影距离内的阴影贴图接收。 间接照明从烘焙光照贴图和光线探测器采样。 这种模式大大减少了渲染阴影投射物的数量,并仍能在远处产生阴影。 然而,静态对象在动态对象上产生的阴影质量不是很高。
Distance Shadowmask是一种混合模式,允许动态对象接收来自静态对象的高质量阴影,以及超越实时阴影距离的预计算阴影。 为此,从静态对象投射的阴影在阴影遮罩纹理和光线探测器中进行预计算。 然而,在阴影距离内,动态和静态对象都将使用实时阴影贴图进行渲染。 距离之外的阴影将使用预计算阴影,两者之间平滑过渡。 间接照明从预计算光照贴图和光线探测器采样。 在Subtractive模式下,直接照明被烘焙到光照贴图中,因此静态对象将不会有来自混合光的镜面或光亮的高光。 但是,动态对象将被实时照亮,并通过光线探测器从静态对象接收预计算的阴影。 主定向光允许动态对象在静态对象上投射减色实时阴影。

174240pdp0d50fb6pzmmpf.png
我们还重新设计了照明窗口以增强可用性,并添加了一个新的Light Explorer窗口,以简化照明艺术家的工作。


支持Vulkan - 将图形性能提升到一个新的水平,并增加了移动设备的电池寿命
Vulkan是新一代的图形和计算API,可在台式机和移动平台上提供高效、跨平台的现代GPU功能。

它通过多线程并行来充分利用多个CPU内核,在使速度提高的同时,减少了驱动程序开销和CPU工作负载;,使CPU可以更好地进行额外的计算或渲染。 总而言之,我们已经看到Unity的渲染性能提升了30-60%,而无需处理Vulkan API的任何细节。

Vulkan的另一个优点是比使用OpenGL ES渲染相同内容的功耗更低。 Vulkan消耗的平均电量是OpenGL ES的88-90%,因此可以增加“10-12%的额外播放时间”,如下图所示,您可以看到相对于OpenGL ES的功耗。

Unity 5.6在Android,Windows和Linux平台上添加了Vulkan支持。我们还增加了Vulkan对OpenVR的初步支持。

TextMesh Pro即将集成到Unity,免费使用
GDC 2017上我们宣布TextMesh Pro是Unity资源商店中表现最好的工具之一。

TextMesh Pro可以替代Unity现有的文本组件,例如Text Mesh和UI Text。 TextMesh Pro使用签名距离字段(SDF)作为其主要的文本渲染管线,使得可以以任何点大小和分辨率清晰地渲染文本。 使用一组利用SDF文本渲染功能的自定义着色器,TextMesh Pro可以通过简单地更改材质属性来动态地更改文本的视觉外观。 添加视觉风格,如扩张,轮廓,柔和阴影,斜面,纹理,发光等,并通过创建/使用材质预设来保存并调用这些视觉风格。
174248yhz2c4yy4894qzoy.png

改进粒子系统

在Unity 5.5中,我们可以为粒子添加自定义数据,这些数据可以从脚本和着色器访问。 在5.6中,我们扩展了这个系统,您现在可以在Inspector中直接配置数据,从而可以很容易地创建曲线和颜色应用在脚本和着色器中以驱动自定义逻辑。 更进一步,本模块中定义的颜色还可以使用高动态范围。在这之前,粒子系统是无法使用高动态范围数据的。
174300o7j1qq1qq7k350i1.png
它具有以下效果:
- Antialiasing(抗锯齿,FXAA、Temporal AA)
- Ambient Occlusion(环境光遮蔽)
- Screen Space Reflections(屏幕空间反射)
- Fog(烟雾)
- Depth of Field(景深)
- Motion Blur(运动模糊)
- Eye Adaptation(眼适应)
- Bloom(虚化)
- Color Grading(颜色分级)
- User Lut(摄影表)
- Chromatic Aberration(色差)
- Grain(粒度)
- Vignette(晕影)
- Dithering(抖动)

该工具还包括一组监视器和调试视图,以帮助您正确设置效果并调试输出中的问题。

具有4k视频播放能力的新视频播放器
Unity 5.6包含一个全新的视频播放器,全新架构平切添加了硬件加速。 即使是普通的手持设备,现在也可以播放支持Alpha通道的高分辨率4K视频。 它旨在使用编辑器和目标平台的视频硬件功能。 它支持目前被广泛使用的H.264 / AAC编,在无法使用H.264 / AAC的情况下则会使用VP8 / Vorbis。 将来我们还会添加对其他编的支持。

新的视频播放器就是一个组件,用于播放您在场景中的电影,提供沉浸式的互动视频体验,高品质的硬件加速性能以及360度视频播放的支持。您可以观看Unite 2016 Keynote视频来了解它的工作原理。


NavMesh:改进的寻路和AI
在Unity 5.6中,我们引入了底层API,旨在解决以前版本的限制。 这些改进为角色和AI导航提供了一整套新的用例和游戏选项。 此外,底层API还提供四种新的易于使用的组件,这些组件已在Github开源。

能将Unity的NavMesh功能应用到动态生成或动态加载的内容上是开发者呼声最高的功能。 利用5.6中的新功能,这不仅成为可能,而且简单高效。 只需加载或生成场景,然后让NavMesh进行烘焙即可。

NavMesh现在是基于组件的,而不是只应用于整个场景中。 这个新架构允许每个场景拥有多个NavMesh。 此外,我们现在可以有不同的代理类型。 这允许您轻松调整不同角色的半径,高度和移动设置。

通过添加NavMeshSurface组件,我们的NavMesh可以与游戏对象而不是世界轴对齐。 这意味着我们可以将我们的导航网格定向到我们在3D空间中所需的任何方向。 对于想要使用我们的导航工具开发2D游戏或者想要把导航系统与Y轴分离的开发者而言,这是一个很大的改进。

因为现在NavMesh烘焙是通过组件来进行,它不再被限制在某个场景中。 这意味着我们可以选择哪些元素成为烘焙的一部分,或者我们可以选择烘焙特定的体积。 如果你曾经因为关卡过大无法使用NavMesh,那么您现在可以只生成您所需要的NavMesh。 这样在回放过程中可以节省大量烘焙时间和内存开销。 使用这种方法,只有那些已经改变的区域才需要重新烘焙。此外,因为它是多线程的,它的效率非常高。

新功能改进了2D游戏开发工作流程
我们一直在努力提供更多的2D支持,并且很高兴地在5.6中宣布几个新的2D功能。

排序组组件提供了在同一排序层上将其他对象分开渲染一组对象的功能。 它确保作为排序组的子项的所有渲染器都被排序在一起,从而有助于管理复杂场景。
174320rkbcvv2nnmvbvzyb.png
具有MultiColumnHeader和SearchField的TreeView示例

为了帮助您开始使用API函数,请访问我们的Unity Scripting API文档或TreeView手册。

我们改进了为每个UI元素发送到GPU的数据量,向Canvas添加了一个新的“AdditionalShaderProperties”。 这会更改创建的所有新Canvas组件的默认行为,并减少渲染画布的内存成本,因为排除了其他未使用的通道。

如果您正在使用Visual Studio 2017,您会注意到,现在可以自动检测带有Unity工作负载的安装,并显示并添加到“外部脚本编辑器”列表中。

Google Daydream&Cardboard VR支持

5.6原生支持iOS和Android版本的Google Cardboard VR,和支持Android上Google Daydream VR平台 。 为了从Daydream平台获得最佳性能和延迟,我们与Google VR NDK集成,以利用该平台的异步重放和VR性能模式。

与Google I/O发布的Google VR SDK for Unity中的Daydream支持相比,我们现在提供了一个更简化的工作流程,进行了显著的优化和减少了延迟。 无需添加任何预制体,脚本或修改manifest文件即可开始使用 - 只需启用VR并将Daydream添加为目标平台,就可以开始制作自己的虚拟世界。

我们还可以轻松地切换和退出VR模式,以便您的应用程序可以轻松扩展到完整的Google VR受众群体,并原生支持Google Cardboard。 针对Cardboard的应用程序可以在较老的设备上运行,这样您就可以接触到尽可能多的用户。目前,Cardboard的支持是专门针对Android的,iOS Cardboard支持即将推出。

如果您有兴趣了解有关Google Daydream with Unity的更多信息,请参阅Unite 2016 Daydream演讲。

支持Nintendo Switch
任天堂Switch既可以像主机一样玩,也可以用来当掌机玩的特点,为游戏开发者创造了一个非常好的机会来重新思考如何设计游戏。已经有好几款使用Unity开发的Switch游戏例如《Super Bomberman》与《Snipperclips》在GDC 2017的Unity展台上率先发布。我们很高兴地向大家宣布Unity已经正式支持任天堂Switch的开发(目前该版本基于Unity 5.5,Unity 5.6.x也即将支持)。
174320z12s0r200o2m3wru.png

支持Facebook Gameroom
通过Gameroom,Facebook为开发人员提供了一种更轻松的方法,将高质量的游戏带入PC,并且让游戏可以充分利用PC的CPU和GPU的能力。您现在可以把您的项目作为原生Windows应用发布到Facebook Gameroom,或者使用Unity的WebGL支持发布到Facebook.com。

从把内容分享给您的Facebook好友到处理内购 – 甚至从Unity编辑器直接把内容发布到Facebook,这一切全都被整合在了Unity里面。
174321fldh5pgwdblqd45d.png

WebAssembly的实验性支持
在5.6中,我们为WebAssembly提供了实验性支持,WebAssembly是一种新的跨浏览器技术,旨在帮助改进Unity WebGL体验。 尽管从技术上将其定义为一种新的独立的标准,但从我们的角度来看,WebAssembly本质上是asm.jsJavaScript子集的字节码格式(asm.js用于将Unity代码部署到WebGL)。与当前使用的基于文本的表示相比,字节码格式显著地减少了编译为asm.js代码的大小。 这将使代码下载更快,更重要的是,能够更快地解析和编译代码,使用更少的内存。 这将改善大型已编译JavaScript代码库的启动时间,并减少其内存需求 - 这两个都是开发者在WebGL平台面临的常见问题。

改进Unity Multiplayer多人联网
5.6包含对现有Unity Multiplayer功能的优化和稳定性的改进。 值得注意的是,在不太可靠的网络条件下运行时,我们已经提高了稳定性。 大多数更改是透明的,不会影响已有游戏所用的网络API的实现。

除了与编辑器相关的修改之外,我们还对Multiplayer文档进行了改进,制作了一些新的学习材质,并开始了新功能的基础工作。 有关的信息,请查看这篇文章,其中提供了Unity Multiplayer,当前和未来状态的更新。

Unity Collaborate多人协作新功能(测试版)
Unity Collaborate多人协作可让团队轻松保存、共享和同步其Unity项目。 它很容易使用,所以整个团队可以为项目做贡献,无论他在哪里或担任什么职位。它比传统版本控制(例如Git,SVN)更简单,所以您的团队可以花更多的时间在重要的事情上面 – 制作您的游戏!

基于早期测试版的客户反馈,我们在5.6中添加了一些最需要的功能,包括部分发布,可让用户发布所选文件。 以前,您必须一次发布所有更改过的文件。

通过忽略文件,您可以忽略项目中不想推送到项目的文件和目录,而新的“回滚”功能可以让项目返回最后一次保存的状态; 特别有助于撤销不必要的更改!

Unity 5.6宣告Unity 5.x周期结束,Unity 2017有什么新功能?

查看这篇文章了解关于Unity 2017开启Unity版本号命名新时代,与Unity 5.x产品周期截止。

查看发布日志了解Unity 5.6所有新功能、改进、Bug修复以及已知问题。
Unity锐亚教育

锐亚教育 锐亚科技 unity unity教程