单机游戏 > 塞尔达传说:荒野之息专区 > 塞尔达传说:荒野之息新闻 > 《塞尔达传说:荒野之息》超长干货技术分析

《塞尔达传说:荒野之息》超长干货技术分析

2019-08-09 来源:未来游戏研究所 作者:未来游戏研究所

  除了天空中的云,环境中的每个部分及其中的每个物体都有可能在适当的光照条件下实时创建光束。这个游戏使用的是屏幕空间环境光遮蔽来辅助这一效果,但体积光照并非视点依赖。你可以在本文中的阴影体部分找到更多有关体积光照运作原理的信息。

  观察建议:注意光束是如何在大型建筑结构投射的阴影中产生的。


景深与动态阴影:

Bokeh DOF and approx. of Circle of Confusion | Bokeh景深与模糊圈的近似值

  我认为引擎所用到的另一个令人惊讶的功能是延迟光照/着色。那么我要稍微简化一点,因为这可以真正地在技术上解释首先为什么现实世界中会出现散景效果。可以说当光进入肉眼/相机的光圈(开口)时,入射光线开始会聚到焦平面的单个点上。随着光越来越集中在这个平面上,它的外观变得越来越锐利,越来越小。随着光远离该平面并变得更加散焦,它的外观变得越来越大,越来越模糊。

  家喻户晓的散景效应是当进入相机镜头的光点呈现出在它们通过光圈时的形状(例如,六边形)。模糊圈是当人类无法区分完全聚焦的光点与略微失焦的光点时的聚焦区域。景深通常由模糊圈来决定。有趣的是,当使用希卡望远镜与相机符文时,《荒野之息》会模拟出这两种概念。我的猜测是它是基于纹素(纹理要素)数据在屏幕空间中计算的,然后作为后期特效应用。

  观察建议:注意相机的十字线与金属盒上闪耀的蓝色灯光。当相机对焦于远离光源的远景时,光源就会变得模糊,同时变得更大。当相机直接对焦于光源时,则会出现相反的情况。蓝色光源所形成的圆形形状称为散景效果。

Sky Occlusion and Dynamic Shadow Volumes | 天空遮蔽与动态阴影体

  除了游戏中的物理系统以外,这些着色特性毫无疑问是《荒野之息》中计算方面上来讲性能损耗最高的要素。

  即便云本身没有任何体积,但它们仍能将(软)阴影投射到环境当中。然而,太阳与来自天空的散射光动态地照明整个环境,而环境与其中所有的物体根据该照明投射出自己的阴影。如果环境中的照明即便是在天空完全被阴云覆盖的情况下仍然保持不变的话就会显得很不真实。由于遮蔽区域的直接光照比较少,环境光(漫反射,非定向光)将会在这些区域的照明中发挥更大的作用,并且这些区域中的所有阴影都将变得更为柔和并开始匹配它们周边环境的颜色。

  该引擎还是用了阴影体而非简单的阴影贴图,并且游戏中的每一个阴影投射器都是这样实现的。阴影体在指定的3D空间内投射,而不仅仅是环境中的表面与物体。除了在执行阴影体时看起来更为真实的天空遮蔽,同时当它与能够接收阴影的大气层雾相结合时,在3D空间内动态生成阴影体还可以提供完整实时体积光照所带来的优势,而在《荒野之息》中正是如此。

  观察建议:观察旗帜的硬阴影是如何变得更加柔和,并随着突如其来的暴风雨开始从环境光中接收更多的颜色。

  观察建议:注意旗帜的运动是如何与产生的光束相关联的。光束之间的暗区是因旗帜的阴影体而存在的。旗帜的动态扭曲告诉了我们这些阴影体是实时生成的。

  

镜头光晕与次表面散射:

Aperture Based Lens Flares | 基于光圈的镜头光晕

  99%玩这个游戏的人都忽视了这一特性,所以老实说我都不确定到底值不值得实施这玩意。

  基本上,当来自明亮光源的光线以某种倾斜的角度进入相机镜头时,由于在相机要素内部反射的光线,它们会产生称为镜头光晕的光学加工痕迹。大多数游戏只是将光晕作为后期效果来模拟这种效果,当相机略偏于相机视体时就会出现这种效果。光在相机本身内部反射这一概念甚至没有被作为因素而考虑。

  在《荒野之息》中,由于引擎已经模拟了景深的相机光圈,它可以追踪光圈与太阳的相对位置,并计算出应该生成多少镜头光晕,即便太阳并不在屏幕上。但这还并不是一切!具有变焦功能的相机更容易出现镜头光晕,并且光晕会根据光圈的形状/大小和变焦级别而改变形状与大小。令人惊讶的是,《荒野之息》也近似出了这些效果!

  观察建议:你可以看到,即便太阳在屏幕外,镜头光晕(圆形光线加工痕迹)仍然存在。更重要的是,镜头光晕的形状,大小与清晰度随着相机变焦级别而变化。

Sub-surface Scattering | 次表面散射

  在现实世界中,有些表面是半透明的(不要与透明混淆),这意味着光能穿过其表面并散射于其内部。现实世界中半透明表面的部分例子为人体皮肤,葡萄,蜡,以及牛奶。在3D图形中对光的这种独特行为建模称作次表面散射或SSS。与大多数实时3D渲染方案相同,程序员已经提出了数种近似这种效果的方法,而无需在分子水平上模拟光的反弹。《荒野之息》中所用的方法相对简单但很有效。


塞尔达传说:荒野之息 主机游戏

  • 类型冒险游戏
  • 发售1970年01月01日
  • 语言未知
  • 平台
  • 研发
  • 运营
《塞尔达传说:荒野之息》是任天堂开发的系列重启作品,是真正的全开放世界,而非以前的种种限制,你可以从任何方向到达你想去的地方。本作会于……

暂无促销活动

火爆开服更多+

thisLineHeights20

新闻更多+

thisLineHeights20

攻略更多+