我刚注意到,当我在移动设备上关闭屏幕并再次打开时,某些图形会调整大小或消失。我的游戏编码为800x480分辨率,我的HTC Desire HD没有这个问题(它的分辨率为800x480)。但是,在我的HTC One或三星Galaxy S3上测试图形比例或表现得很奇怪。
那些行为奇怪的物体唯一的共同点就是它们每一帧都会旋转。固定物体似乎根本没有受到影响。
我有星星每一帧旋转和放大/缩小,我有一个向左/向右或向上/向下移动的移动块。当屏幕重新启动时,移动块似乎忽略了碰撞,并且消失在他无法触及的位置。
有什么想法吗?
提前致谢。
答案 0 :(得分:1)
当您关闭屏幕时,渲染暂停(即不会调用render()
)。当你恢复时,Gdx.graphics.getDeltaTime()
会非常大,因为最后一帧至少在几秒钟前渲染。因此,通常大约为0.0166
(60 FPS)的增量时间值现在将大约为100倍。
如果您正在使用此delta来进行物理模拟/碰撞检查步骤,那么这将是beserk,因为它太大了。旋转不应该是一个真正的问题,但缩放也会成为一个问题。
避免这种情况的一种简单方法是输入类似
的内容if (delta > 0.1f)
delta = 0.0166f
避免采取非常大的步骤。