1

我刚刚注意到,当我关闭移动设备上的屏幕并再次打开它时,一些图形会调整大小或消失。我的游戏编码为 800x480 分辨率,而我的 HTC Desire HD 没有这个问题(它的分辨率为 800x480)。然而,在我的 HTC One 或三星 Galaxy S3 上进行测试时,图形会缩放或表现得很奇怪。

那些表现怪异的物体唯一的共同点是它们每帧都会旋转。静止的物体似乎根本没有受到影响。

我有每帧旋转和放大/缩小的星星,我有一个向左/向右或向上/向下移动的移动块。当屏幕重新启动并消失到他不应该到达的地方时,移动块似乎忽略了碰撞。

有任何想法吗?

提前致谢。

4

1 回答 1

1

当您关闭屏幕时,渲染会暂停(即不调用render())。当您恢复时,Gdx.graphics.getDeltaTime()将非常大,因为最后一帧是至少几秒钟前渲染的。因此,通常为0.0166(60 FPS) 的增量时间值现在将大 100 倍。

如果您使用此增量进行物理模拟/碰撞检查步骤,那将变得疯狂,因为它太大了。旋转不应该是一个真正的问题,但缩放也会超出屋顶。

避免这种情况的一个简单方法是放入类似的东西

if (delta > 0.1f)
    delta = 0.0166f

避免采取非常大的步骤。

于 2013-07-25T02:27:58.597 回答