Skip to content

冷知识

至关重要的帧率

在很多游戏中有一项反物理特性,那就是速度与帧率挂钩!这听上去非常奇怪,速度怎么可能与游戏帧数挂钩呢?这其实是因为游戏是由游戏引擎对客观现实进行模拟计算得来的,为了性能做出了诸多取巧和妥协,自然会与客观现实产生截然不同的结果

与连续的现实世界不同,游戏画面和各类效果是由离散的片段组成。为了便捷的开发,在每次帧渲染/物理计算周期时才进行物理计算就成了一个合理而省事的选项!但代价是游戏速度与计算速度挂钩!

比如 DOS 版的红警 95,AI 速度与 CPU 计算能力正相关。辐射四的全局游戏速度也与帧率有关,在 240 帧的速度下,游戏就像开了 2 倍速一样。部分老游戏用模拟器玩也会导致像开了全局加速一样

游戏速度与帧数脱钩的游戏引擎也并非没有,只是这样做会增加开发难度与运行开销。而且因为全局计算的耗时也会导致游戏速度无可避免的被帧率影响。因此如果对游戏速度并不敏感或锁帧的游戏自然会选择更简单的开发模式(早期主机游戏均是锁帧)

由于 R 星游戏从《马克思佩恩 3》开始就在使用 R 星自研的RAGE引擎,与常用的寒霜、CryEngine、起源、unity、虚幻等引擎补并不相同。因此对于是什么导致帧数越高游戏 GTA 里部分操作的速度越快,也并没有一个公认合理的猜测

RAGE(Rockstar Advanced Game Engine)引擎是由 Rockstar 旗下以 San Diego 工作室与其他制作组成立的 RAGE 技术组联合开发,并非是 id Software 的 Rage 引擎

该引擎是由原本天使工作室(Angel Studio)的天使游戏引擎(Angel Game Engine)改进而来,该引擎能整合诸如 Euphoria 角色渲染引擎和开放源码的 Bullet 物理引擎并具有多平台适配能力

自 2008 年的《岸湾午夜俱乐部:洛杉矶》 (PS3, Xbox 360)开始,R 星便开始广泛的使用 RAGE 引擎开发旗下的游戏

可能原因导致的结果
速度/过场的计算与帧数固定帧数越高,全局游戏速度越高
加速度变化的计算与帧数相关帧数越高,加速越快
物理帧计算与渲染帧不同步帧数越高,极限速度越快

当然 GTA5 作为一款“新一点”的游戏,游戏速度只能说与帧率正相关而非线性相关。而且神奇的是部分载具的速度与帧率完全无关,而部分载具的速度与帧率关系很大

与帧率相关的游戏内容

  • 载具速度
  • 摩托车倒飞与日墙
  • 左轮连射 BUG 的射出子弹数
  • 部分 BUG 的触发

【GTA5】高帧数能否提高车速?【小吴】

《戴森球计划》:游戏性能优化(前篇)

Important Classes - Time and Framerate Management

Fix Your Timestep!

飞行载具的毁坏时间

一旦你的飞行载具开始冒烟,无论会不会再次受到损害,它们最终都会损坏,但是损坏的耗时和过程表现不同

  • 直升机分别会在 0:44, 1:05, 1:23, 1:43, 2:06 发动机停转,并最终在 2:21 秒彻底损坏
  • 飞机则是在 1:46 彻底损坏,但是并不会全程冒黑烟

Once your helicopter begins smoking, you have 2 minutes and 21 seconds until it is fully destroyed, assuming no more damage it taken.

During this time, the helicopter will cut out at 0:44, 1:05, 1:23 and 1:43 and 2:06 seconds.

This applies to every helicopter.

Moreover, planes have 1 minute and 46 seconds until they are fully destroyed, although smoke is less visible at first.

在线模式的奖章

根据翻阅源代码后得到的结果,最近的活动里的升级奖章最多只到 1000 级