1

它认为,以正确的速度运行游戏需要一个时间步长,快速的硬件会将速度调整为 30 或 60 fps,否则,游戏将运行得如此之快,以至于硬件可以处理它。现在,我的游戏在 PC 上按预期运行,但是,当在设备(galaxy ace)上启动时,身体移动非常缓慢,甚至无法超过最大速度,无论 Body.AppliLinearImpulse 或 AppliForce 中的数量是多少,另外,我已将 setLinearVelocity 更改为一个非常高的数字,并且始终保持相同的速度。可能是 libgdx box2d 上的错误?或者我的galaxy ace android 2.3的错误

4

1 回答 1

1

您可能正在模拟 Box2D 物体,同时传入等于像素值的尺寸。然而,Box2D 以米为单位运行,因此创建 300 米大小的实体确实为您的整个模拟设置了一个较低的上限。

推荐的方法是使用任意比例(1m == 64px)并缩小您的 Box2D 系统 - 使用从 px 转换的仪表值初始化和操作主体。

这将允许更广泛的运动和更高的速度上限。和你有同样的问题,花了我一点时间来解决。

于 2013-01-08T23:26:19.000 回答