赛车游戏中的物理学

机动车辆的形状和设计千差万别,每一种都有其特定的用途。

无论是简单地让你舒适安全地从A地到达B地,还是在最短的时间内驰骋在平坦的赛道上,穿越崎岖的地形,还是在弯道上侧滑。

赛车游戏中的物理学-有驾

每辆车都经过其工程师的精心打造,使其在各自的领域中脱颖而出。

KTM x-bow,一款超轻型赛道车,由一位专业车手驾驶。

一辆越野车,一辆路虎卫士,以及一辆保时捷Cayman S,由一个十足的傻瓜驾驶。

所有这些是为了更好地了解这些差异巨大的载具在现实生活中的表现,并与育碧新游戏《飙酷车神2》的程序员们讨论他们如何编程,让载具在游戏中如何表现。

与现实生活中的赛车少年们喜欢通过改装来毁掉自己的赛车,而这些改装会对性能产生负面影响,不同之处在于,游戏引擎将物理模型与3D模型分离。

“当我们制作3D模型时,它是车辆的一部分,然后我们拥有与3D模型分离的纯物理模型。”

物理模型创建了一个模型,其中车轮等物体是独立的物理对象,拥有各自的摩擦力和质量模型。

独立的3D模型允许开发者选择对车辆进行哪些外观更改会影响性能,例如,在《飙酷车神2》中,扰流板不被视为空气动力学表面,所以你内心的傻瓜可以随心所欲地在前轮驱动车辆上安装扰流板。

游戏中为数不多的会影响车辆性能的外观更改之一是悬架。

悬架是由弹簧、减震器和连杆组成的系统,将车身与车轮连接起来,目的是保持轮胎与地面的接触,同时最大限度地减少运动传递到车身。这为车内乘客提供了舒适感,这对于电子游戏来说并不重要,但它也决定了车辆如何处理颠簸和转弯。越野车的悬架非常柔软。这使得它们能够高速行驶在崎岖的地形上,而不会将过多的力传递到车身,但也有一个明显的缺点。在转弯或在倾斜的地面上行驶时,车辆的大部分重量会转移到车身的一侧。

悬架如此柔软,车辆极易侧倾,因为车身很容易在车轮上倾斜,再加上重心较高,这无疑是一场随时可能发生的灾难,尤其是当你让一位爱出风头的澳大利亚视频博主坐在驾驶座上时。虽然游戏中你无法让车辆侧倾,因为物理引擎会在车辆侧倾过度时施加扭矩,但它确实允许足够的侧倾,使悬架模型能够真实地表现,并将其反馈到牵引物理模型中。专为赛道设计的车辆通常都拥有坚固的悬架。

这有助于轮胎保持与地面的接触,确保在转弯时不会因倾斜而损失牵引力,同时保持一致的行驶高度,这对于像十字弓这样的车辆来说是一个重要特性,因为它的底盘虽然通过后扩散器,但却是其下压力产生的重要组成部分。

保持低重心也很重要,因为这可以最大限度地减少我们之前看到的侧倾效应。

像这样的后硬悬挂系统的一个优点就是乘坐舒适性。

你可以看到悬挂刚度和重量分布(物理模型精确模拟了这些因素)对牵引力的影响,尤其是在像福特野马GT这样前置发动机、后轮驱动的车辆上,这种车辆在转弯时特别容易漂移。在弯道顶点松开油门并踩下刹车,减速产生的重力加速度会使车辆沉重的前端向下推,抬高后轴,导致后轮失去抓地力,从而导致转向过度。

这很有趣,而且在游戏中对速度的惩罚相当小,但在现实生活中,这是赛车设计师想要避免的,因为如果车轮打滑,你就无法全力以赴,而且会因为侧滑而失去前进速度,所以大多数赛车都采用中置引擎,以便在刹车时保持后轮的抓地力,并保持悬架的刚性,以确保轮胎之间的平衡尽可能接近理想状态。

在转弯时保持前后轮之间的重量均匀分布非常重要,因为这会让车辆不会转向过度或转向不足。

转向过度是指漂移,后轮失去抓地力;转向不足是指前轮失去抓地力,削弱了转向轮胎控制车辆方向的能力,从而让惯性占据了主导地位。

在比赛中,你不希望出现这两种情况,但这是电子游戏,所以你可以同时调整前轴抓地力和后轴抓地力来获得这些效果。这个滑块只是调整了游戏物理引擎中施加在轮胎上的摩擦系数,从而调整了轮胎对地面施加的牵引力。

牵引力是开发者用来改变游戏体验的主要工具之一,因为它决定了车辆与道路的互动方式。

更逼真的游戏,例如模拟器,会尽力真实地模拟牵引力,但也可能会提供可选的驾驶辅助功能,以简化游戏。例如,在高速行驶时,最大转向角度会受到限制,以便通过笨拙的摇杆控制进行超车。这导致许多汽车的行为就像转向不足的汽车一样,如果转弯速度过快,最终会撞上护栏。

但如果没有驾驶辅助,结果可能也差不多,你只是打转了几次,就像我关闭牵引力控制系统驾驶保时捷时那样。你只需要学会更好地控制转弯速度。追求街机体验的游戏可能会取消这种机制,将牵引力与转向机制完全分开,让你能够以任何速度无忧无虑地转弯。

《飙酷车神2》的设定介于两者之间,它显然是一款街机游戏。

你可以驾驶福特F-150猛禽赛车,以180公里/小时的速度完成各种夸张的跳跃,并在落地时保持车辆完好无损;然后以200公里/小时的速度在泥路上转弯,而不会失去横向牵引力。

这里的牵引力刚刚得到提升,让游戏玩起来更容易,也更有趣。

接下来,我们来看看引擎的动力是如何处理的。

显然,计算机程序员不会模拟整个引擎和传动系统来确定车辆的性能。

以保时捷911 GT3 RS为例,它0-100公里/小时加速仅需3.2秒,这与现实生活中的它几乎完全相同,即使使用了氮气加速。

程序员希望车辆之间的相对性能相对准确,因为如果马自达 RX-7 在加速度和最高速度方面击败保时捷 911 GT3 RS,那就毫无意义了。

为了理解加速度和最高速度是如何编程的,我们首先需要研究哪些力会降低车辆的速度。

汽车的最高速度主要取决于作用在车辆上的阻力。

阻力的公式由这个公式给出,而功率的公式则仅仅是力乘以速度。

赛车游戏中的物理学-有驾

通过重新排列这些变量,我们得到了这个最高速度公式,物理引擎用它来限制车辆的最高速度。

程序员可以通过调整每辆车的最大功率、阻力系数或迎风面积来调整其最高速度。

如果他们真的想,他们也可以改变地图上海拔高度对应的空气密度。

调整加速度稍微困难一些,因为加速度由几个随车速变化的因素决定。

主要关注的变量是车轮扭矩,对于内燃机来说,车轮扭矩会随着发动机转速和传动比的不同而发生显著变化。

如果没有轮胎滑移,车轮对地面施加的力将随着施加的扭矩除以车轮半径而变化。车轮半径只是内部传动系统的一部分,在计算车轮对地面施加的力时需要考虑。

车辆将配备多个档位,可以以不同的速度循环切换,以改变施加的车轮扭矩,并具有一个永久传动比,该传动比由差速器等附加传动装置决定。

所有这些参数都将被编程到游戏车辆中,最终的车轮扭矩将由以下公式确定。

其中 Te 是发动机扭矩。

发动机扭矩会随着发动机每分钟转速的不同而变化,我们用扭矩曲线来定义这种变化,就像保时捷 Cayman S 的扭矩曲线一样。

程序员会再次将车辆的扭矩曲线输入到车辆参数中,以确保其性能与真实车辆一样。

设计这样的游戏始终需要在真实感和趣味性之间取得微妙的平衡。

开发者并不总是追求极致的写实主义,程序员们经常会调整游戏世界中的物理变量,比如横向牵引力,通过夸张的漂移营造出更具街机风格的氛围,或者简单地让汽车在高速转弯时更容易行驶。

或者像这款游戏一样,你可以在空中从飞机切换到船。

0

全部评论 (0)

暂无评论