游戏帧数究竟是怎么影响招式判定的?

  • N
    NeverMorerer
    例如60fps的鬼泣4,解除帧数限制后就可能出现尼禄三红前冲变成七红前冲的夸张情况,多平台游戏上这种情况屡见不鲜,很多游戏的招式尤其是多段判定的动作容易被影响。这是什么原理?反过来低于60帧会不会也有影响?拖慢和丢帧两种类型在判定上又有什么区别?
  • 赤井稻妻
    掉帧是游戏显示的时候帧数不够,游戏实际上还是以60帧的标准再计算,有些游戏像生化2re60帧的双倍刀法,伤害计算应该就是按帧来算的,伤害框和受击框接触的每一帧计算一次伤害,那么60帧就会让伤害翻倍
  • x
    xz_04
    可以参考下这篇关于怪物猎人中帧率的测试:bit.ly/MHWEffectsOfFPS
    结论部分大概翻译下:对于能适应不同帧率的动作,比如设计的时候是60帧率每3帧判定一下,游戏程序会把其换算成时间单位 3 / 60 = 0.05 秒,然后规定至少要间隔这么久才进行下一次判断。如果在30帧率运行这个程序,跑完1帧需要 1 / 30 = 0.033 秒,还不到 0.05 秒的间隔,所以要每2帧(0.066秒)才判定一下,这个判定间隔就变相拉长了。
    对于其它限死帧数的动作,比如不管帧率多少它都是每3帧判定一下,那么游戏程序在120帧率运行下(3 / 120 = 0.025 秒)每次判定的间隔就会是60帧率下(3 / 60 = 0.05 秒)的一半。
  • 不见不散
    有一种设计是将帧与伤害绑定,即动作运行到某一帧时造成伤害,这种设计在丢帧时可能伴随丢失伤害。

    ----发送自STAGE1 App for Android.
  • 杉田悠一
    当年低配置跑鬼泣4,整个游戏速度会变慢,我记着好像光荣游戏也有类似情况,不掉帧,直接减速,
    应该是帧数直接等于游戏速度,这种制作方式挺老派的,也容易出问题,
  • d
    dumplingpro
    现在游戏基本都是物理帧和画面帧分开了,各种各种判定和逻辑都放在物理帧处理,画面帧可以调,只要CPU内存没问题游戏不会拖慢,GPU处理不过来只是画面不断跳帧而已。

    但历史上不少游戏(街机和主机这种固定帧数不可调的为主)是画面帧和物理帧不分的,并且部分游戏至今也会有分不清的情况(记得原始版血缘30帧锁死,黑客大佬调到60帧就会判定错误),所以讨论格斗游戏、动作游戏的时候很喜欢用"帧"这个概念。
  • d
    dumplingpro
    现在游戏基本都是物理帧和画面帧分开了,各种各种判定和逻辑都放在物理帧处理,画面帧可以调,只要CPU内存没问题游戏不会拖慢,GPU处理不过来只是画面不断跳帧而已。

    但历史上不少游戏(街机和主机这种固定帧数不可调的为主)是画面帧和物理帧不分的,并且部分游戏至今也会有分不清的情况(记得原始版血缘30帧锁死,黑客大佬调到60帧就会判定错误),所以讨论格斗游戏、动作游戏的时候很喜欢用"帧"这个概念。
  • N
    NeverMorerer
    鬼4优化太好所以我那几台究极废铁笔记本基本都能跑60帧所以没啥印象。经历过拖慢最严重的情况,应该是Xbox360跑忍龙好汉坡,还有破笔记本跑究极风暴3,以及psp模拟真三国无双。都是拖慢到基本没法玩的情况。
  • s
    seducer0719
    生化2重制的小刀伤害吧,我记得pc版帧数上去以后伤害爆炸
  • 阿狸狸狸狸狸
    说到底估计还是卡婊技术不到位罢了

    —— 来自 Google Pixel 3, Android 11上的S1Next-鹅版v2.4.1
  • 慕容断月
    光荣的游戏可以在设置里选择是帧同步还是时间同步,pc版是两种判定方式都有的
  • z
    zxlice
    比如锁定60帧一般指以1/60秒渲染图像,while (elapsed >= frameRate)
    但是在进入这个判断后,要先计算这段时间内物理啊逻辑啊多少次,这些都是离散的delta t,比如碰撞检测,你不可能用一个很大的t(1/60)算一次就完事,会穿墙,要分割为片段算完,再用最后的结果更新图像