首页 游戏资讯 游戏攻略
您的位置: 首页 > 游戏攻略 >

哪些游戏的“雪地效果”做得最真实?不同游戏对踩雪反馈差异是否反映了开发技术力的高低?

这些踩雪效果具体是如何实现的呢?丨本问题收录至,参与主题季游戏讨论,领取活动积分「小雪花」

------------------------------------

既然对雪地效果感兴趣,那光是用文字来叙述未免太单调了。

我选择了五款游戏,各位可以简单看一看。

关于哪款游戏的雪地效果最好,不同玩家可能会有不同的想法。我先不给出我的评价,我们先来简单分析一下技术。

因为我接触过的只有虚幻引擎,所以这里我就拿虚幻引擎来简单举例,

给各位看看这种高品质的雪地效果,在游戏里到底是如何实现的。


雪地效果的实现与技术分析:

其实,雪地在游戏中是一个复杂的话题,不同项目处理方式不同。

有的使用程序化层,有的使用预建模的资产,更高级的系统则依赖渲染目标、置换贴图和曲面细分来实现角色走过时的实时变形效果。

我先讲一下什么叫渲染目标(Render Targets)。

其实这真不是什么复杂的东西,官方资料网上就有,通俗的说就渲染目标像是一张隐形的草稿纸。

专业叫法是蓝图,不过只要会做无所谓你怎么叫。

在正常情况下,显卡渲染的画面是直接显示在屏幕上的。

但在处理雪地时,引擎会专门拿出一张草稿纸,记录玩家在雪地上走过的轨迹

这张纸不画颜色,只记录哪里被踩过了以及踩了多深。

通过这样的方式,我们不仅能实现雪地效果,还能实现物体的碰撞效果,比如你扔块石头到水里,会产生涟漪,渲染目标就是记录这些数据的。

这个功能是实现持久脚印的核心,当你在游戏里回头看时脚印还在,就是因为它保存了这些数据。

至于置换贴图和曲面细分也很好理解。

传统的纹理贴图只能改变颜色,物体表面其实还是平的。

贴图是一张灰度图,纯白代表最高点,纯黑代表最低点。

当角色踩在雪上时,引擎会修改对应的位移贴图数据,让地面网格的顶点真正地陷下去或隆起来。

而游戏里的地面本来是由简单的三角形网格组成的。如果三角形太大,踩出来的脚印就会像马赛克一样方方正正。

曲面细分技术可以在运行时,将一个大三角形自动拆分成成千上万个微小的三角形,提供足够多的细节支撑,让脚印的边缘看起来圆润、平滑且真实。

理论上,将这些技术叠加在一起,再经过大量复杂的前期铺垫,我们就能实现角色走过时的实时变形效果。

但是,如何像我在图片里展示的《黑神话:悟空》这样实现大规模、高精度雪地形变的工业级标准方案呢?

虚幻引擎的解法,就是Virtual Heightfield Mesh,简称VHM,即虚拟高度场网格技术。

其实这些问题的答案就在你我手边,只要你是从事过游戏制作的人,应该对这件事很了解。

要让VHM实现足够的效果,首先得有足够的雪地材质。

关于这部分细节,我估计我就是讲了也不会有人愿意听。

我在这里指个路,感兴趣的玩家可以了解下。

我们再把话题回归到VHM上来。

VHM被称为无尽细分的网格,它只在你眼睛看到的区域实时生成精细的三角形,而在远处保持简单。

理论上,这就使得玩家可以在极广阔的雪原上,依然看到脚下极其细腻的雪地凹凸。

不过它具体是如何协作的,这些属于游戏科学技术美术层面的推测实现方案,我实在无能为力。

但是我在外网上找到了一位大佬的制作流程,这应该是非游戏工作室能达到的最接近工业级的效果了。

这部分内容比较复杂,我尽可能说得简单点。

想实现这个效果需要有比较多的前期铺垫,因为那位大佬主要想实现的是雪的互动效果,我这里补充点关于雪景的想法。

雪的外观方面,我自己在虚幻引擎里找到的最标准的解法,是次表面技术。

因为雪这种东西看起来好像是一片白,但是我们都在现实里看过雪,它在阳光下是会有一定的散射的。

表现为不透明,但光线会在其内部散射,使得部分光线从表面的对面穿透出来,这就是雪的感觉。

把之前说过的3D材质结合这个效果,就能得到比较不错的雪纹理。

那如何让雪地像《黑神话》或《大镖客2》那样产生深坑呢?

我记得我之前在讲Decima引擎的时候曾经拿虚幻引擎的Nanite技术举过例。

的确,在处理微观世界达到毛孔级的物体的时候,Nanite的超高度渲染的确是处理超高精度模型的黑科技。

不过,它不具备动态变形的能力。

简单来说,Nanite像是一座非常精细的石头雕像(我懒得去开游戏找图片了,就拿这个代替下)。

你可以看清它所有的纹路,但你没法让石头像橡皮泥一样实时凹陷下去。

这就是矛盾的地方,如果你想要雪地看起来精细,就得用Nanite;但想要雪地能踩出坑,就得让它像橡皮泥一样变形。

既然Nanite暂时动不了,就得用VHM了。

我们可以在地图原本的地形上面,盖一层专门负责形变的网格。

这层网格会读取雪地层的信息。

有雪的地方,这层网格就隆起来,表现出厚度。

没雪的地方,它就乖乖缩到地壳下面去,把自己藏起来。

被踩的地方,它就实时产生顶点位移,塌陷出一个深坑。

然后,在这些景观细节上,用Nanite打磨的精细一点,看上去就很不错了。

我个人只能理解这部分我常用的流程,关于人体和雪的Niagara 2D Grid的流体模拟这部分就有点超出我能力范围了。

游戏科学的操作肯定在我之上,很多具体的实践细节我还没想通,毕竟流体模拟我并不精通,很多技术还在逐渐摸索。


雪地效果真实性与技术力评测:

个人觉得,就真实性这方面来看,实在不好说谁高谁低。

如果从整体表现来看,今年的《GoY》在动态效果上的刻画是很不错的;

但是老是有种轻飘飘的感觉,按理说那么厚的雪不应该就这么简单的把被归拢在一旁。

网络上评价比较高的雪地效果,有《美末2》、《地平线》、《荒野大镖客2》这几个。

但是这些都不是最近制作的作品,年份略微有点早,现在不论是R星还是索尼,应该都能在技术上进行进一步的迭代升级。

《死亡搁浅》的雪地效果其实也有值得借鉴的地方。

Gif画质损失,本来的版本会好很多

我自己倒是知道如何用虚幻引擎实现这种暴雪效果,可是跟Dicema引擎做出来的完全不是一回事。

相比 UE5 的VHM方案,Decima 引擎更强调物理光学的模拟,雪看起来更亮、更透。

今年的《刺客信条影》在这方面的表现也很不错。

不同的观众对最真实肯定存在不同定义,但是在踩雪反馈这方面,肯定是能够判断出技术力的不同的。

形变的震撼感、光学质感、系统交互等每个方面都能作为考量的标准,基本上,距离当前时代越近的作品表现力会越好,比如《黑神话:悟空》、《刺客信条:影》、《羊蹄山之魂》。

但是这并不是说以前的老作品就差了,《荒野大镖客2》等老作品,虽然单个脚印的几何精度可能不如现在的 UE5 VHM,但像身上沾雪、积雪融化、马匹阻力这些方面,细节深度上依然无敌。



这种差异并不全是因为技术不行,而是制作的取舍。

像有的游戏脚印很浅,或者只是贴图,这种做法通常是为了节省顶点计算预算。

如果一个游戏同屏敌人极多,比如《真三》那种割草游戏,它就绝不敢像《黑神话》那样给地面做无限细分。

或者有的游戏雪地看起来极美,但踩上去反馈平平。

这可能是团队把性能预算都分给了光线追踪和表面效果,追求的是每一帧都是摄影大片,而不是每一脚都要挖个坑。

还有像 《大镖客2》这种通过大量的角色动画配比,来让游戏在细节的表现力提高的做法。

所以,这种问题很难有结果。

不过玩家对在这方面表现好的作品,心里自然会有一把尺子。即使这些高低之分不被所有人认可,但是座次可能早就被排好了,毕竟好的作品和效果是很容易就能分的清楚的。


相关文章