Unity 2017.2正式发布,新功能详解(上)
Unity 2017.2提供了全新的2D世界构建工具,支持新的XR平台,并且受益于Unity和Autodesk之间的独家合作,可以更快地在Maya / 3DS Max和Unity之间进行数据的导入和导出。
Unity 2017.2对强大的叙事工具Timeline和Cinemachine进行了更新,也支持ARCore,ARKit,Vuforia和Windows混合现实的沉浸式头盔。本文将介绍一些重点功能,新功能和改进的详细信息。
Unity 2017.2新功能概览
全新的2D开发工具
Unity 2017.2为2D创作者提供了一整套全新的2D工具,包括用于快速创建和迭代的Tilemap功能,以及用于智能自动化构图和追踪的Cinemachine 2D。2D游戏设计运用了Cinemachine的动态程序摄像机,更易进行自动构图和追踪,从而增强2D游戏性、角色和环境设计。Tilemap让您在Unity中创建和迭代关卡的设计周期变得更快,让艺术家和设计师在构建2D游戏世界时可以快速构建原型。
https://v.qq.com/txp/iframe/player.html?vid=r055949ptve&width=500&height=375&auto=0
混合现实(XR)平台支持
Unity 2017.2显著增加了对新XR(增强显示和虚拟现实)平台的支持水平。现在,您可以在Unity中获得Windows混合现实、Vuforia和MacOS上的OpenVR的原生支持。这意味着您可以接触更广泛的受众群体,更好地利用性能提升带来的优势,并享受更有效的开发流程。
主流AR平台支持
我们继续对Google的ARCore SDK提供支持,以及通过Unity的ARKit插件对苹果的ARKit提供支持。受到世界各地众多创作者们实验和创新的启发,我们迫不及待地想看到所有类型的增强现实体验变成现实。为创建最新最好的AR平台,我们正在构建一个扩展的、定制的AR开发工作流程 。我们还新增了对许多新的Windows混合现实头盔的支持,这将使虚拟现实开发人员能够接触到最广泛的受众。
VR开发优化与性能提升
Unity 2017.2还为VR创作者带来了更多的功能,可以显著提升和优化性能。立体实例(Stereo Instancing)(单次渲染的下一次迭代)现在可用在所有使用DX11的PC平台上。这种渲染的提升将有助于优化硬件的使用,使开发人员能够构建更好的游戏和体验。另一个新功能是Google VR的Video Asynchronous Reprojection,可以在Daydream View上提供更高质量的视频体验。
这些新平台和改进使跨平台VR和AR开发变得更加容易和快捷。 结合我们现有的功能,开发人员可以在最大数量的XR平台上探索沉浸式叙事的所有可能。
数字内容创建工具工作流程 - FBX支持
Unity和Autodesk一直在共同致力于改进对FBX的支持。 这次合作使Unity能够直接访问FBX SDK源代码,从而加快了工具间平滑无损的往返工作流程的开发。
现在,包括艺术家和设计师在内的所有用户都可以轻松地以高保真的方式在Maya / Max和Unity之间来回传送场景。新的2017.2 FBX导入器/导出器插件也包含一个Maya插件,提供以下功能:支持GameObject层级、材质、纹理、Stingray PBS着色器和动画自定义属性。
https://v.qq.com/txp/iframe/player.html?vid=m0560h2detp&width=500&height=375&auto=0
Unity 2017.2新功能详解
Unity 2D新工具与功能改进
Tilemap
新的Tilemap功能使您能够在Unity的2D游戏中构建复杂的、基于网格的世界。无需使用第三方解决方案,您可以快速轻松地创建基于tilemap的关卡。除此之外,您可以创建自己的拼图和智能画笔调色板,直接在场景中基于网格的系统上进行绘图。
Cinemachine支持2D
2D游戏设计可以使用Cinemachine的动态程序摄像机了。现在,您可以轻松地提高并自动化2D游戏、角色和环境的构图和追踪功能,改善玩家体验并节省编程时间。Cinemachine功能可通过资源商店下载,现在将其添加到您的项目中。Cinemachine已经有一个广泛的功能集,其中许多模块在2D中运行良好,现在我们又添加了一些专门针对2D的功能,包括以下内容。
Framing Transposer:移动摄像机追踪并跟随对象。
Group Target:跟踪一组对象的中心,并调整每个对象的权重和影响。
Group Composer:变焦和/或推拉摄像机,保持一组目标在屏幕中,这很适合用在2.5d或“3d”2d游戏中。
Orthographic projection rendering:对于纯2D游戏,将主Unity摄像机设置为正交投影,也适用于使用实际视差和透视的2.5d游戏。
其它2D方面的改进
精灵图集打包也做了改进,现在调节缓存图集中的精灵所使用的时间更少。我们还更新了BoxCollider2D Sprite Tiling生成,以生成更清晰的形状。
最后,我们改进了SpriteRenderer中渲染的9-Sliced精灵,对负的宽度/高度值使用“Sprite Tiling”行为,以生成更加完美的效果。
以前的工作流程
新的工作流程
2D Extras
2D- Extras中包含有用的自定义拼图块和画笔,例如在“Unite Keynote”中展示的基于自定义规则的Tilemap,以及来自2D游戏Phased的资源。
这些可重复使用的脚本将帮助您创建自定义的拼图和画笔来制作游戏。您也可以通过修改脚本的逻辑为您自己的具体用例创建新工具!
编辑器功能改进
音频剪辑的Timeline可视化
您可以在使用Timeline时以音频波形的形式看到音频剪辑的波形曲线。这对于音频提示的定时操作和事件非常有用,就像在非线性视频编辑系统中一样。您可以轻松地拖动任何Timeline剪辑以匹配音频,或移动音频以匹配场景中的动作。
使用音频波形来计算角色的移动时间
互动教程
编辑器教程提供了一种互动式的学习方式来教用户如何开始使用Unity。Unity 2017.2中的新教程面板会指导并回应您的操作,对于初学者,它将轻松引导您完成一系列教程。当您尝试让玩家角色完成目标时,每个教程都让您有机会与Unity进行互动,以修复部分现成的游戏。同时,您可以了解Unity界面和基本的概念。
https://v.qq.com/txp/iframe/player.html?vid=z0560qoprld&width=500&height=375&auto=0
我们将创建更多的交互式教程,并计划向社区开放相应的创意工具,以便您也可以为Unity或您的资源商店工具创建交互式教程。希望您喜欢这个新工具。
NavMesh可视化实时调试工具
使用NavMeshBuilder API构建NavMesh的过程所生成的调试数据,现在可以在编辑器中使用NavMeshEditorHelpers. DrawBuildDebug()进行选择性收集和可视化了。
资源管理
数字内容创建(DCC)工具的工作流程
FBX导入器/导出器:Unity和Autodesk的直接协作,为您带来行业中最佳的FBX支持。我们正在努力使您的内容创作和互动工作流程尽可能高效和有效。直接合作让Unity能够直接在FBX SDK源代码上工作,从而改进了Unity FBX导入器和导出器以及Maya的自定义Unity插件。总而言之,它产生了强大的往返工作流。
新的Unity FBX导出器增加了从Unity导出FBX模型的功能,以便在Unity之外使用。特别值得一提的是,FBX支持的改进允许您将作品发送到Maya / Max,然后将其更改无损地合并到您的Unity资源中。导出器还提供对材质和纹理的支持,以及GameObject组件,包括碰撞器、刚体、脚本和音频等。
得益于Unity自定义Maya导出器插件,现在从Maya导出到Unity比以往更简单、更完整。 在Maya中点击一下,您可以导出FBX文件,包括材质、纹理和Stingray PBR材质,以最大的逼真度在Unity中使用。
改进的Unity FBX导入器提供对层级、材质、纹理、Stingray PB着色器和动画自定义属性的支持。通过这些改进,Unity中完成的工作将被保留,并将更新的Maya资源插槽重新导入到Unity场景中,因此您可以直接找到上次中断的位置并继续工作。
FBX导出器(beta版)可从Unity AssetStore资源商店获得,并包含自定义的Maya插件。
输入时嵌入材质
现在,您可以在导入预制件中创建材质,而不是在外部“材质”文件夹中创建材质。FBX文件可能包含嵌入的纹理和材质。此前,首次导入总会创造额外的资源文件夹。然而,随后的导入没有创造额外的资源,除非产生的资料被移动或删除。纹理在每次导入时都会被覆盖。因此,我们添加了将嵌入材质显示在项目中FBX内的选项,并使其成为只读。您还可以通过导入检查器中的按钮手动提取纹理。最后,将FBX文件提取到项目中会创建一个可编辑的复制品。该复制品通过导入器的元数据与原始的FBX网格进行关联。
动画自定义属性
各种DCC支持向对象添加自定义属性:
Unity现在可以从FBX文件导入自定义属性的动画曲线,默认情况下禁用。
这些将在Animation窗口中显示为Animator属性,就像从导入的Animation Clip所创建的其它曲线一样:
然后,您可以使用MonoBehaviour脚本逻辑驱动其他Component属性,或者使用AssetPostprocessor将曲线直接绑定到任何组件。
Maya / 3DSMax Stingray基于物理的着色器
现在支持使用Stingray PBS着色器导入包含模型的FBX文件:
Maya 2016版本中 Stingray PBS材质。
在Unity中导入的相同材质:
备注:
Stingray PBS具有与Unity标准着色 器相似的特性,因此我们创建了一个名为“Standard(Roughness setup)”的着色器。该着色器具有单独的粗糙度图,因此比Unity标准着色器消耗更多的图形资源。由于此原因,此着色器需要在前向渲染中使用着色器模型3.5。 我们建议在尽可能下使用标准着色器。
Stingray PBS和Unity标准着色器对光照的反应和生成的结果类似,但是因为使用的代码不同, 所以您在Maya或3DSMax中看到的内容与Unity中看到的内容将会有所区别。
对Maya或Max中的底层ShaderFX图形进行的任何更改都不会导出到FBX文件中,因此不会反映在Unity中。 我们不建议修改ShaderFX图。
Avatar Mask的改进
在2017.2中,我们对遮罩更新的工作流和UI做了改进,在更新的层级结构,无效的遮罩路径将显示为红色。无效路径的遮罩复选框会被禁用。
新的 AssetBundle API
AssetBundle允许您将项目资源分割成多个文件,并在需要时调用它们,无论是本地还是远程。这对于优化性能或管理应用程序资源的分发是非常好的。Unity 2017.2提供AssetBundle全新的API。如果您使用AssetBundle从CDN安全地提取内容,这可能适用于您。
以前, 我们从文件或者内存中加载AssetBundles。然而,有时候在数据可用之前需要采取中间步骤。例如,我们想解决客户端从CDN中提取数据的问题。在这种情况下,解密的内容将被以流的方式被获取,您必须编写额外的步骤才能将流数据转换为可用的格式。现在,您可以使用新的API AssetBundle.LoadFromStream将数据直接读取为托管Stream对象。 您所需要编写的代码更少了!
结语
以上是Unity 2017.2编辑器中的部分新功能与改进,我们在下篇文章中将详细介绍Unity 2017.2中对混合现实(XR)的的支持,以及对图像,粒子系统,服务和其他方面的全面改进在Unity官方中文社区(unitychina.cn),请保持关注!
推荐阅读
Unity 2017.2新功能尝鲜:支持线性渲染的WebGL 2.0
Unity 2017 | Timeline功能亮点Playable API
近期Unity官方活动
10月26日,我们将在上海举办Unity独立游戏日,火热报名中。
10月16日- 31日截止,Unity Plus加强版大促销。
点击“阅读原文”进入Unity官方中文社区!