我正在开发一款游戏,球被击中后可以离开图层的可见区域。我在每一帧中设置球的位置,因为我从 Box2D 获得有关其位置的反馈。当球接近屏幕边缘时,我想缩小适量以保持球可见。有人可以帮助我了解执行此操作的逻辑吗?谢谢。
最佳答案
假设屏幕大小为 480(像素),球的原始直径为 10 像素。
Original size of ball = bOriginal = 10
Distance represented by screen = s = 480
Distance ball has travelled = x
Diameter of the ball = b = bOriginal
当球到达距屏幕边缘一定距离时,您会看到一个标志。之后你就得到了你已经知道的速度;这也可以被认为是球向屏幕边缘移动的速率,因此屏幕必须相对于球的尺寸扩展的速率,以确保球行进的总距离包含在屏幕尺寸。
If x >= 475
ratio of screen size to distance = r = 480 / (x+5)
b = bOriginal * r
end
这将演示“缩小”,因为球会不断变小,以确保行进的总距离适合屏幕的大小。
关于ios - 如何在 IOS 中平滑地缩放图层以将对象保留在屏幕上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7181109/