Unity 2017.2将会包含的新功能之一,就是支持线性渲染的WebGL 2.0。有了线性渲染就可以确保输入、输出与计算都位于正确的颜色空间。最终图像的亮度会根据场景中的光照数量线性变化,也就是说,场景与资源的光照效果会更加自然。

泰课在线

上图左边是线性渐变,右边是眼睛所观察到的渐变,注意中间灰色部分与渐变边缘的融合。

我们在Unity 5.5中为Android平台的OpenGL ES 3.0与iOS平台的Metal添加了对线性渲染的支持。在即将发布的Unity 2017.2中,线性渲染将支持以下平台:
Windows、Mac OS X与Linux(PC端)
Xbox One
PlayStation 4
Android平台OpenGL ES 3.0及Vulkan图形API
iOS平台Metal图形API
WebGL 2.0

线性渲染功能强大且有趣,有了它就可以使用Unity后处理特效资源包,其中包括抗锯齿(Temporal AA)、景深、颜色分级等特效,能够在WebGL平台实现惊艳无比的效果。

但还是有些性能问题需要注意。我们与Khronos WebGL团队合作对WebGL 2.0进行了扩展,添加了对sRGB DXT纹理压缩格式的支持。如果所使用的网页浏览器不支持该项功能,Unity将解压缩sRGB DXT格式的纹理,这将带来显著的带宽消耗。

温馨提示,目前支持WebGL 2.0线性渲染的浏览器包括Google Chrome和Firefox。

泰课在线

最新的Unity 2017.2 Beta版中已包含WebGL 2.0,也可下载WebGL线性渲染示例工程,或直接下载构建的WebGL版本,查看WebGL 2.0中的线性渲染在网页浏览器中的效果。