Unity 2018.2 新功能(XR相关)

2018-07-17  本文已影响471人  XR技术研习社
概述

Unity 2018版本周期将围绕Scriptable Render Pipeline (SRP)、Shader Graph、C# Job System、Entity Component System、Burst Compiler等核心功能展开,2018.2即在此基础上添加新的功能,本文将分享新版本在XR(VR / AR / MR)方面的更新。

轻量渲染管线(Lightweight Render Pipeline,LWRP)

新版本中的 LWRP 做了一系列性能优化,适合硬件性能不高或很吃资源的硬件平台,如移动平台、VR平台等。目前LWRP支持所有VR平台,但是要在VR中使用多重采样抗锯齿(MSAA)需要等 2018.3版本。另外,LWRP目前尚不支持ARCore、ARKit、Hololens、Magic Leap平台,官方说明如下:

Basic LWRP is currently supported on all VR platforms, however, it will not support Multisample anti-aliasing (MSAA) until 2018.3.

Please note that LWRP is currently not supported for handheld AR, like ARCore or ARKit, or HoloLens or Magic Leap devices. New product plans will be communicated at a future date.

高清渲染管线(High Definition Render Pipeline,HDRP)

HDRP在体积雾、平面光泽度反射、屏幕空间反射/折射代理、Shadow Mask等方面均有改善。目前HDRP处于预览(Preview)状态,由于缺少某些材质属性(如SSS等)支持HDRP,Shader Graph 技术仅是对其提供有限支持,官方说明如下:

Limited support means that only a subset of HDRP features is available in the Shader Graph. There are currently no advanced material features (SSS, clear coat), and tessellation is not currently available either.

但是,这跟XR几乎没有任何关系(至少在2019年以前),因为HDRP目前不支持任何VR/AR平台,官方说明如下:

Please note the HDRP is not currently supported on any AR or VR platforms. Support for these platforms is scheduled for 2019. New product plans will be communicated at a future date.

不过HDRP仍然是塑造高品质CG内容的利器,因为我们已经看到《死者之书》在WWDC上的表现。

渐进式光照贴图(Progressive Lightmapper)

在2018.2中,Progressive Lightmapper已经去掉了预览状态,成为烘焙光照贴图的首选项,实测烘焙一个VR场景的速度也有明显的提升。

在之前的版本中,光线的衰减主要受灯光组件的范围(Range)属性影响,而在现实世界中,昏暗的灯光和明亮的灯光,其衰减效果是受其强度影响,于是在新版本中便可以对烘焙的灯光衰减模式进行配置,这些模式包括: Legacy、Linear、InverseSquared、InverseSquaredNoRangeAttenuation,效果如下图所示,在脚本中由枚举型数据FalloffType指定。

在HDRP中默认使用Inverse square衰减模式,官方说明如下:

While legacy falloff is still supported, we now also support linear falloff, distance squared, and distanced squared with attenuation to zero at the range limits. Inverse square falloff is enabled by default in HDRP in order to match real-time lighting, and enables physical units for light intensity.

需要注意的是,配置衰减模式需要在编辑器(使用[ExecuteInEditMode ]标签)中通过脚本实现,具体代码实现如下所示:

Shader Graph

Shader Graph 新增对HDRP的支持,如前所述,仅是有限支持,主要包括PBR和Unlit两类主节点。另外,在PBR和Unlit主节点上,新增了Position属性,如下图所示:

主节点右上角新增设置选项,点击可对Shader进行相关的渲染设置,比如选择PBS的工作流程(Workflow),Metal代表类似Standard Shader 中的Metal/Rough工作流程,而Specular则对应Spec/Gloss工作流程。

同时,可对Shader暴露的属性进行自定义命名,以方便通过脚本进行引用,如下图所示。这类似于使用Substance Designer暴露节点的参数供Unity调用。

对于Shader的路径,在新版本中亦可对其进行设置,在Shader Graph中修改保存以后,材质的Shader选择列表将同步更新,如下图所示:

Texture Mipmap Streaming

此功能可减少Unity应用程序对纹理内存的使用,同时可提高初始载入时间。在纹理导入设置中,勾选Streaming Mip Maps 选项即可启用此功能,如下图所示:

启用后,当模型距离摄像机(头显)较近时,只载入分辨率较高的Mipmap,高分辨率的Mipmap将保留在内存中,随着程序的运行,当内存预算超支时,高分辨率Mipmap将从内存中释放。关于内存预算的大小,可在Quality Settings中勾选Texture Streaming进行设置,如下图所示:

其它更新:

以上仅是Unity 2018.2在XR方面的部分特性,此外粒子系统、2D、Cinematics、Addressable Asset system、C# Job System等方面也有较大更新,限于主题,不再赘述,读者可参考此次的发行说明进行详细了解,一共包含183项改进和1426项修复。另外,XR技术研习社公众号后台发送“2018.2”可获得 Addressable Asset System、Entity Component System, C# Job System 相关介绍资料,如下:

上一篇 下一篇

猜你喜欢

热点阅读