» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


发新话题
打印

[其他] 转自S1:【怪物猎人崛起】扎实的帧数,但代价是什么?

原贴https://bbs.saraba1st.com/2b/thread-1982183-1-1.html

大部分在ns上看中画质和世界规模的游戏都很少考虑1080p,往往都是900p动态分辨率。比如荒野之息,龙之信条,还有上古卷轴这样的。更有甚者,像xb2和xb1de,为了上特效,主机模式下最高只有720p。而卡普空在去年的采访里表示mhr在主机模式下目标1080p的分辨率,我是相当的惊讶。怪物猎人崛起,这个乍一看相当本世代的游戏,选择1080p的分辨率是相当奇怪的。ns本身机能的上限就在那,拉到这么高的分辨率,那往往就意味着放弃了特效。在刚放出mhr pv的时候我就对游戏的画质失望过,当时我想着,与其1080p,为什么不考虑810-900p,但是提高特效呢?

等到demo拿到手后,不得不说,mhr跑的帧数是非常稳定的,无论是多人还是单人,基本上都稳稳把持在30fps。那卡普空是怎么做到的呢?我看泥潭里有不少人表现出对ns能跑这个画面的游戏感到不可思议,所以特地来写了这么个帖子。

那么,卡普空是怎么做到的呢?好吧,它其实没做到的。
这里挪用下VG Tech的数据。主机模式下828-756p,ui是完全1080p渲染。掌机模式下是648-576p,ui是720p渲染。其实我一开始用掌机模式玩的时候就已经感觉到没有720p了,感觉画面是比较糊的。没想到的是,主机模式竟然连900p都没有,大部分情况下连810p都不能保持的样子。喂,卡普空,不是说好的1080p吗?难道ui 1080p也算1080p?

不过也有不少人觉得画面其实挺清楚的。实际上我在玩主机模式的时候,觉得确实没有1080p,但体感也好像有810p以上的样子。研究了一下,一个可能原因是mhr用了一个锐化的滤镜,而且这个滤镜是在镜头静止下来的时候是最强的,运动画面下我似乎没看到很强烈的锐化的artifact,运动一结束,锐化带来的黑线之类的就变得明显了起来。(不过这点我又不能百分百确定,也有可能是我显示屏自己有个锐化效果,这年头你也不知道你的显示屏的“游戏模式”到底做了什么处理)但我觉得这种做法是很有可能的。异度之刃就是用了非常显著的锐化滤镜(毕竟主机模式也就720p还有taa),结果就是边缘结块现象比较严重,mhr这样搞也是有前车之鉴。而且因为运动时不需要细节,把锐化停掉(也可能是调低)还可以降低锐化带来的黑线之类问题的闪烁。另外,我没有看到什么抗锯齿的痕迹,边缘狗牙基本裸露,没有柔和的现象。

也许很多人会觉得mhr画质很好。我也见过不少的帖子表示这个画质能在ns稳30fps非常不可思议,然而在我看来,这个画质相较于同是ns的其他游戏是差了很多的。像体积光这个东西,荒野之息,龙之信条这些游戏都有的。在荒野之息的树林里,你可以看到光透过蕉叶洒下来,非常静谧美丽。

到mhr里,就只剩下一个简单的低精度的bloom。画面上差异就很明显了。

除此之外,像屏幕空间环境光遮蔽ssao这类特效也没了。加上阴影精度低和小物体(比如草之类的)没有阴影,整个画面看起来比较“平”。  

(注意左边草没有阴影,而且草完全是十字片的方式做的,密度也不大,看起来观感更“平”了)。

荒野之息虽然草也没有阴影,但是靠近距离大量高密度的模型草和ssao增添了画面细节。同时也遮盖住了低精度的地面贴图和滤波问题。而mhr里这个问题就变得很明显了。
地形贴图有很明显高损失压缩带来的块状artifact。



远景贴图也能看到明显的重复平铺tiling。

受限于ns的内存大小,这是很正常的问题,荒野之息里把远处的地表贴图用一个更简略的mipmap,向“纯色化”过度以此降低tiling的问题。考虑到mhr是写实化的风格,这点确实不好处理。

这里说到阴影,就不得不提mhr的软阴影。之前我看有人在泥潭说到感觉mhr画面不干净,除了那个锐化滤镜外,mhr这个软阴影的做法也是主要原因之一。就像我之前在灾厄启示录帖子里说过的那样,像这种大世界实时阴影,考虑到ns的机能限制,阴影的分辨率是很低的,所以阴影锯齿会明显。我们可以用软阴影来降低它的狗牙感。一般来说,常见的pcf软阴影是这么个原理。想想一个这样一个3x3一共9个像素:
x x x
x o x
x x x
我要获得中间像素o的软阴影到底要多软的程度,我需要把它自己和它的8个临近像素是否在阴影里的情况都获得一遍。这样就意味着要采样3x3共9次阴影纹理。相比之下,低精度的阴影贴图很可能需要更大面积的软阴影效果,也就是说3x3的范围可能没办法软掉大的锯齿,那我们就需要5x5,7x7,9x9,你可以看到这个贴图采样数的增长是非常快的。实际上,就算是3x3,5x5的情况,考虑到移动端内显存共用一个带宽特别低的ldppr4(ns只有25.6GB/s),贴图采样会更加的耗,所以软阴影开销也很大,优化不好可能导致降低了阴影分辨率,但并不能提升性能。

那卡普空是怎么做的呢?也算是一个比较巧妙的做法吧。他们每帧只对2x2的像素里的对角线的两个像素做软阴影。什么意思呢?假设我们把屏幕分成好多个2x2的小块像素,那每一小块就是类似这样。
1 0
0 1
这个时候,我在第n帧的时候,只对标记为1的像素做软阴影,标记为0的像素不画阴影/只画硬阴影(只需要1次采样)。
在第n+1帧的时候,同样这么处理,但是小块的排列变成了:
0 1
1 0
就这样不停交替变换,因此每帧只处理了(最少情况下)屏幕像素数一半的软阴影,但是靠频闪的视觉暂留,来达到看上去全分辨率软阴影的效果,节省性能。
这张截图就能看出阴影的“点阵化”处理,


而这张截图角色的脸上看上去“脏兮兮”的面纱一样的,也是低精度的软阴影抖动导致的。也是低精度的软阴影抖动导致的。


如果想要看抖动的话,可以看我发的这个视频https://www.bilibili.com/video/BV1mK411M7Vn,还是相当明显的。这个方法理论上是可行的,但是由于目标帧率是30fps而不是60fps,所以是15fps交替出现,并不能很好的掩盖掉频闪的问题(不过你要是不凑近看其实也不是很明显啦)。同时,由于主机下分辨率最高也就比810p高那么一点,一般的像素确实太少了,所以软阴影的大果粒还是挺明显的,这也就是为什么大家觉得画面比较“脏”“不干净”。这个软阴影是到处都是,从你的武器到远处的山脉,很多时候感觉像糊了个什么东西一样。理论上,这东西应该配合一众temporal时域升采样技术,不过以ns的带宽,做这类效果是做不起的。

这样的抖动效果mhr还用在了另一个地方,就是水平面的反射。mhr里是两种方式,一种是像沼泽,池塘,河流这种,用了一个屏幕空间反射ssr。 你抬头看的到的反射,一低头,景物不在画面里,就看不到了。




可以看下这个视频https://www.bilibili.com/video/BV1Bi4y1F7uR。一种是泥地上的小水坑这类,用的是一个静态的天空盒,只有某一个时刻的云的图像,没有任何准确度可以,完全就是凑活一用,也不是实时更新的,也没有周遭山体之类的反射,只有一个非常低精度的云。而沼泽,池塘这种用屏幕空间反射的,就使用了类似软阴影的抖动方法。ssr嘛,大家都懂,开销很大,也吃带宽,很多ps4游戏也开不起(比如大家都觉得画面很好的地平线零之曙光),那上ns的话,肯定是要精度大砍特砍 -- 嗯,至少在2017年之前应该是这样的。所以理所当然的,mhr里这个ssr的精度非常的低。

这个反射又糊,噪点有多,还有很多近景周围空洞的artifact。


我们凑近看一下这个屏幕空间反射  (希望s1不要压的太狠),可以看到反射图案是很毛糙的。



这就是因为mhr用了抖动的方法,虽然每帧反射分辨率很低,但靠抖动来略微提高下效果(尽管如此,精度还是很低。。。),可以参见这个视频https://www.bilibili.com/video/BV1pV411t7kf
当然,你可能看到我说了一个2017年之前,那这是怎么回事了?屏幕空间反射因为需要多次步进+纹理采样,所以很耗。但是,17年的时候,育碧搞出来了一个叫屏幕空间平面反射的东西。这个玩意儿可以直接忽视掉raymarch步进的操作,**提高性能。他可以以更小的开销达到更好的反射准度。唯一的问题就在于,只能用于平面(最好是水平面,不过也有人推导出了任意平面的做法),不能用于任意表面的反射。而这在mhr里恰好不是问题,因为本身只有水面能有反射。现在这个技术在移动端是非常常见的,无论是tx的codm,pubgm,天刀手游,还是mhy的O神都是这么一个做法。

在b站上找了个和平精英的水反截图  。


虽然也是做了降分辨率的处理,但是细节精度上比mhr好了太多,远处的树的轮廓都非常清晰。我最不理解的就是在这里,明明有现成的,简单的,表现更好的,开销更低的反射方案摆在眼前,但是卡普空却选择了一个老旧的方案,只能说这一块上面敏感度不太够,或者他们觉得没必要改?我无从得知。(接下楼)



[ 本帖最后由 ostxen 于 2021-1-11 17:07 编辑 ]


TOP

(接上楼)所以说,mhr本身目标分辨率就低,同时又大量阉割了特效精度,要是不能稳30fps才有问题呢。没必要说什么这个画面在ns上真不可思议啥的。不过这么说,肯定又会有人说,啊,那为什么我觉得这画面挺好的呢?这不矛盾。你觉得画面好喝技术上面是两码事。mhr之所以看起来画面好,一个很大缘故是,他是个少见的,专门为ns以写实目的开发的游戏,而不是像别的,要不然是老旧世代游戏的移植,要不然是非写实,要不然是粗暴移植。尤其考虑到,前作掌机mhxx,是一个连物理光照都没有的“简单拉分辨率”移植。当这作mhr,不仅换上了基于物理的(pbr)材质,支持多光源(应该是改成延迟渲染了),大量使用法线贴图,看起来画面就好像很惊艳了。我建议你们去看眼ns上re6的移植,部分过场那个人物的渲染,我第一眼也不觉得是ns能跑的。实际上,pbr材质对整个画面的贡献是非常大的,要我说,合理的光照模型效果比光追明显的多了。平时能见到很多说“啊,感觉现在手游堪比端游”的人,我觉得他们多半就是被改用pbr材质后的效果给唬住了。另外角色贴图的精度是很高的(虽然地表贴图就不行了),看上去确实是非常ps4世代的表现力。

不过,我并不是想说mhr技术上不行之类的,水面反射那也只是我个人的抱怨。我想说的是,mhr只是一个正常水平的发挥而已。mhr也有不少亮点,比如大量半透明镂空材质(树叶),植被密集,而且阴影距离也算比较长。尽管全局光做的比较一般,但是也确实是实时时间变化的。立体的地图也意味着渲染和加载的优化更难。本作的毛发用的是来自mhw的方法 ,狗子看起来也可撸。


说起来,我本人还挺喜欢这作的美术,感觉相当别致。但是,真要说对ns的压榨,那还是得看第一方。


[ 本帖最后由 ostxen 于 2021-1-11 16:56 编辑 ]



TOP

发新话题
     
官方公众号及微博