《捣蛋猪》物理学:绿猪到底有多大?

《捣蛋猪》物理学:绿猪到底有多大?

《愤怒的小鸟》系列游戏开发商 Rovio 的新作《捣蛋猪》(Bad Piggies)已经在 App Store 付费应用排行榜上呆了好几天了。在众人专注于游戏本身的时候,总有一些人会关心其它稀奇古怪的东西,比如说,游戏里的绿猪到底有多大?曾经计算过《愤怒的小鸟》中小鸟尺寸的 Wired 编辑 Rhett Allain 又一次蛋疼发作,对绿猪的尺寸进行了下面这样的一番计算:

样本截取

首先,截取一段合适的样本。为了便于计算,样本中绿猪的受力情况应该是越简单越好,于是最终取的样本是如下面视频所示的这样一段:这一段里,绿猪被放在一个 TNT 炸药箱上,引爆炸药后绿猪在垂直方向上进行了上下运动,而在水平方向上并未受力:

受力分析

已经完全忘光了的 高一物理内容开始了。在上面这段视频里,绿猪在垂直方向上的受力分析如下图所示。

在垂直方向上,绿猪只受到重力的作用。套一下公式的话就是下面这样:

然后,g 的值是一个常数,在地球环境里,它是每秒 9.8 米。

尺寸计算

计算尺寸的方式是下面这样的:

  • 视频分析软件 Tracker 对样本录像进行分析。Tracker 是一个跨平台的视频分析软件,在 Windows、Linux 和 Mac OS X 上都可以使用。
  • 在样本录像中找一个物体,以这个物体的尺寸作为单位。在这段样本中,我们找了绿猪下面的那个 TNT 炸药箱。并设炸药箱的高度为 1TNT。
  • 根据对样本录像的分析进行计算,算出以 TNT 为单位的加速度值,然后与每秒 9.8 米的常数值进行比较,由此换算出 TNT 炸药箱的实际高度。
  • 根据绿猪与 TNT 炸药箱的高度比例,计算出绿猪的实际尺寸。

于是我们就画出了绿猪在垂直方向上位置与时间的函数图像,一条抛物线:

从初三数学内容中,我们知道抛物线的方程式为 y=at^2+bt+c,我们可以直接在 Tracker 里算出 a、b 和 c 的值分别为 -5.173、34.412 和 -52.031,然后,将这个方程式与下面这个力学中的直线运动公式进行对比:

比较两个式子中 t^2 前面的参数,我们可以算出以 TNT 为单位的重力加速度值为 -10.346 TNT/s^2 .

单位换算与最终结果

然后,将以 TNT 为单位的加速度值与每秒 9.8 米的常数值进行对等计算:

由此得出的结果是 1TNT=0.947m,也就是说 TNT 炸药箱的高度为 94.7 厘米,根据绿猪与炸药箱高度的比例,可以得到绿猪的宽度(其实更好的说法是直径…… 虽然绿猪不是一个完全的圆形)为 96 厘米。

计算完毕。

之前 Rhett Allain 还算过在前作《愤怒的小鸟》里面绿猪的尺寸——1.16 米宽。所以…… 前后两部作品里绿猪的尺寸是很不一样的,《捣蛋猪》里的绿猪尺寸只有《愤怒的小鸟》里绿猪尺寸的 83%……

当然,这个时候,Rovio 的开发人员一定在拿着源代码偷偷发笑吧……

 
愤怒的小鸟捣蛋猪产品观察Rovio
关注极客公园公众号
反馈