首页
搜索 搜索
当前位置:聚焦 > 正文

游戏NPC分布密度高《博德之门3》第三章大幅损耗CPU性能

2023-08-19 14:14:54 哔哩哔哩

在上周《博德之门3》的主要内容“掉落”后不久,我注意到有很多评论表明,玩家玩得越深入,游戏的性能特征变化就越大。早期体验老手想要更具体的第三个场景测试,感谢Twitter用户darkessfx给我们的游戏保存,我们获得了99个小时的保存时间,并准备进行一些压力测试性能测试。

那么,第三幕有什么特别之处?简单地说,这都是关于密度,将行动转移到Baldur's Gate城市本身,这是该系列中的一个大城市,拥有许多npc。在我上周的核心评测中,我注意到中等规格的pc在人口稠密的地区表现不佳,在城市中运行表明这里的NPC数量明显更高。这里的密度大大增加了CPU负担。


(资料图)

在第三章节中这种较重的表现的一个怪僻之处在于移动会让游戏对CPU造成明显的负担。在一个特定的静态场景中,我注意到酷睿i9 12900K的帧率为90fps,但只是在小圆圈中移动角色会使性能下降20%,即使屏幕上的视图和对象数量基本上是相同的。帧率较低,但更有针对性的是,帧时间更短。

在第三幕中发现的另一个问题是镜头过渡到过场动画或对话,这是在这个区域中经常发生的事情。过渡到过场动画通常会导致较高的CPU使用率,但由于第三幕的CPU负担通常更高,这些进入对话的暂停现在明显更糟糕。然而,你会注意到,在第三幕中费力的场景中,最大的影响可以归结为整体的帧时间稳定性——或者我称之为“帧健康”。在嵌入的视频中可以更好地从视觉上解释这一点,但是当帧时间增加50%到100%时,这就表现为口吃。更复杂的是,城市里的地震——每次地震都伴随着多个大的帧时间尖峰,呈现出明显的口吃。

渲染API的选择也可以发挥作用。在Vulkan下,游戏以与DirectX 11相似或更差的方式运行npc装载区域。所以,尽管Vulkan在Nvidia或AMD硬件上没有npc的空白处速度更快,但在npc多的地方它的运行速度却更差——在我的12900K上大约差10%。

这是一款顶级处理器,但坦率地说,它对性能的影响在主流的Ryzen 5 3600上是灾难性的。性能立刻下降了50%,但帧时间却非常非常糟糕。虽然12900K确实有一些帧时间峰值和一些抖动,但Ryzen 5 3600的情况更糟,几乎每隔一帧渲染都会显示肉眼可见的长度变化。它的平均运行速度为30fps,但看起来并不流畅,就像PlayStation主机上的《血源》一样,因为每帧的差异太高了。如果从一帧到下一帧的帧时间增加了40%到50%,那就无法平滑,这意味着FreeSync和G-Sync在这里帮不了你。

而且情况还可能变得更糟。如果你是第三幕的巫师并且使用了一些召唤生物呢?在12900K上,性能下降了10%,帧时间更加不稳定。每隔几帧,就有一帧比另一帧更昂贵——这可能是寻径、动画或AI更新。当然,这很难知道,但在像Ryzen 5 3600这样的较老的中档芯片上,这种AI更新每隔几帧就会被放大,导致灾难性的结果。帧率数字表明下降幅度仅为6%,但帧时间可能会增加50%,导致运动不稳定,看起来永远不会平滑。第三幕真的是一个怪物,旧的Zen 2芯片似乎无法胜任这项任务。

因此,特别要求审查第三幕是合理的。《博德之门3》的运行情况更糟糕——但这是可以解释的,因为屏幕上有更多的AI,放大了CPU的限制。你对此也无能为力。在绝对最低的设置下,可以看到平均性能提高了14%左右。帧时间不那么不稳定了,但所有这些地震仍然会导致帧时间大幅飙升,现在你失去了很多视觉上的辉煌,这要归功于对细节水平的冲击。Vulkan能帮上忙吗?不完全是,我的性能下降了7% - DX11仍然是最好的方法。

也许是30fps上限?内置的帧率上限会在v同步激活时产生不一致的帧速,而即使是Nvidia稳定的半速率自适应v同步控制面板选项,由于CPU限制,仍然会看到一些帧时间飙升。但它更一致,所以像这样的选择,或Kaldien的SpecialK限制器可能值得研究。

这种表现是否合理,是否可以修复?为了回答这个问题,我认为我们可以看看性能是如何随着内核和线程的数量而变化的。在研究Core i9 12900K时,我们看到了一些有趣的数据,当我们研究游戏如何在不同数量的内核和线程上运行时。这里表现最好的组合实际上是没有超线程的8核。八核只比六核好4%,而完全启用的12900K只比六核好两个百分点,尽管线程数和可用核数翻了一番。启用超线程的8个p核是最糟糕的结果,比6个核的结果要慢一点。

正如我所看到的,这种扩展表明《博德之门3》需要更多的工作,更好地利用多核处理器(并且可能理解用户不太可能在BIOS级别关闭超线程)。将重点放在减少地震和摄像机位置变化造成的口吃上也会受到欢迎。

Vulkan仍然是个问号。如果它不能在您最需要的时候提高CPU性能,那么它的目的似乎是无效的,而一个好的、高性能的Vulkan实现可能是帮助解决CPU有限问题所需的基础。考虑到所有这些,看看PlayStation 5版本如何堆叠将是令人着迷的,记住它使用与Ryzen 5 3600相同的Zen 2架构,在第三章环境中挣扎得如此之多。