像SmoothVideo Project所使用的那样,帧插值是否可以在不影响性能的情况下增加游戏的帧率?


11

SmoothVideo项目使用帧插值将视频的fps从24提高到60。结果非常令人印象深刻。我想知道这是否可以应用,在电子游戏中看起来是否不错?

与渲染所有帧相比,它使用的资源要少得多,因此在某种程度的折衷下,允许较低端的装备以更好的装备的质量进行渲染。我知道它不会那么精确,并且会稍稍增加输入等待时间,因为它需要保持最新的帧才能生成和插入内插的帧。不过,这还不如全帧那么糟糕,根据我的推理,仅滞后时间就是插值时间加上原始fps刷新时间的一半。因此,对于30 fps,这将是33ms / 2 +内插时间。

也许这种滞后将使其不适用于快速过去的第一人称游戏,但我怀疑这会在节奏较慢的游戏中成为障碍。

在较高的启动速度时,延迟会变小,因此,我认为从60fps到100 + fps时值得这样做,虽然会稍有增加,但仍会给系统带来极大的负担,但可以改善用户体验。


在某些方面,这已经通过运动模糊完成。通过使用已知对象的运动可以解决缺少导出的运动数据(在某些答案中有描述)的问题。唯一的区别是渲染器进行平滑的插值,而不是平滑地插值,并创建它们的混合。您所描述的插值可能未使用,因为遮挡发生了变化,并且产生了不良的结果。
晶体管

Answers:


6

这些方面的系统已在“释放的力量”中使用。我不知道其他使用它的标题。


1
谢谢(你的)信息。在上面找到了出版物:dl.acm.org/citation.cfm?id=1837047似乎很成功,那么为什么没有看到它的广泛使用?
cybrbeast

主要是由于Byte56的答案中概述的原因:它并非没有缺点,而且在许多情况下,这些缺点也不值得,因为还有其他方法也可以实现更高的帧速率。

1
根据本文的介绍,通过使用预测插值,该方法实际上可以减少延迟!eurogamer.net/articles / ...因此,在所有指标上似乎都更好。但是一定要缺少某些东西,因为如果您认为这是真的,那么它将在所有地方使用。
cybrbeast

@David:该文章意味着,对于某些类型的输入,与以30 fps的速度运行相比,它减少了明显的延迟。在可行时(更好的等待时间和没有插值伪像),以60 fps的本机速度运行仍然是可取的,因此许多开发人员将其视为首选。当游戏无法达到60 fps时,并不总是有足够的时间或预算来编写插值系统来消除间隙-该系统非常复杂,并且在TFU的情况下,其渲染管线的某些方面可为您提供帮助由所有游戏普遍共享。
DMGregory

我想说的是所有指标都比未增强的30 fps(未渲染的
60

9

是的,这是可能的,但并非没有复杂性。

尽管帧插值可以在视频上实时进行,但视频游戏不一定是这种情况。即使这是实时处理的视频,该软件也可以“向前看”到下一帧。这是插值的非常关键的组成部分。这就是问题与游戏有关的地方。大多数时候,下一帧尚未渲染!因此,软件不知道插值中的下一个点。

当然,有可能使游戏落后一两帧,以便为插值软件提供需要使用的帧。但是,这对于交互式媒体来说效果不佳。现在,屏幕上显示的内容将从接收到的输入中延迟。这确实使处理输入和提供对游戏的良好响应性变得更加棘手。这就像人为地表现滞后。此外,在任何主要游戏引擎中都不可能获得本机支持,这意味着您需要编写自己的游戏。


对以下提到的这种更智能的插值方法有何反应,哪个声称可以防止延迟增加?eurogamer.net/articles/…–
cybrbeast

在这种情况下,主要是最后一句话适用。我不确定他们的技术多少抽象了该功能。不破坏插值可能需要花费大量工作,或者它可能已经“正常运行”。我想如果是后者,我们可能会看到它出现在某些主要引擎中(如果未获得专利)。我不确定仅此功能是否值得创建和维护自己的引擎。
MichaelHouse

不确定是否在后面运行框架是交互性的主要障碍。在最后两个更新之间使用带有权威服务器w /(游戏状态)插值的任何多人游戏通常会显示出较大的滞后性,但这其中包括一些节奏最快的射击游戏。我们也不一定需要下一帧来构造游戏中的中间元素,因为与视频不同,游戏可以生成可推断的地面真实对象蒙版和屏幕空间速度信息(类似于运动模糊效果)。
DMGregory

2

是的,这不仅可能,而且现在可用:将游戏PC /控制台连接到使用运动插值的电视。意见各不相同,由于插值滞后,因此不太适合FPS之类的抽搐游戏,但将帧频从60Hz提升至120Hz则效果很好。

至于是否可以在游戏本身中做到这一点,还没有足够的动力,因为大多数显示器无法输出这些高帧频。尽管从电视的运行情况来看,用于计算机的120 + Hz监视器不太常见,但这种情况可能很快就会发生。即使游戏无法达到这些帧速率,拥有高刷新率监视器也具有优势:除了上述基于电视的运动插值之外,如果允许游戏在准备就绪时输出帧,而不是进行同步,则它可以提供更平滑的帧。垂直同步。一旦120 + Hz显示器变得司空见惯,我希望游戏开发人员能够赶上并开始使用更多技巧,包括运动插值,以达到这些高帧频。


3
我的经验是这些系统具有巨大的输入延迟,例如200毫秒以上(60帧每秒12帧以上)。这就是这些电视通常具有禁用该功能的“游戏模式”的原因。
BlueRaja-Danny Pflughoeft 2015年

0

用户执行某项操作与结果出现在屏幕上之间的时延不应超过100毫秒,否则用户可能会注意到延迟。

用户的监视器可能需要大约30毫秒才能显示其收到的图片。可以使用更快的监视器,但是许多普通用户没有这些监视器。如果视频卡每秒计算30帧,则需要33毫秒来计算一帧。我假设为30 fps,因为如果游戏已经以60 fps运行,则不需要帧插值。如果我们使用三重缓冲,则将其加倍至66 ms。那是90毫秒。

我认为我们需要三重缓冲才能使帧插值有意义。因此,如果在此基础上使用帧插值以获得60 fps,则会将延迟增加一个60Hz帧,这又是17 ms +插值时间X,使我们达到107 ms +X。问题不在于插值这样的事实,但是在引入插值之前我们已经接近延迟明显的事实。

对于主要是虚拟电影的游戏来说,这可能会很好,但是在FPS中,用户会注意到瞄准有些问题。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.