0

我正在 iPhone 5 上制作 SpriteKit 游戏。我遇到了一个奇怪的错误,即应该代表屏幕边缘的物理体似乎太小,并且似乎需要一个奇怪的缩放因子才能正确。

这似乎是将physicsBody设置为屏幕尺寸的正确方法:

CGRect screenRect = [[UIScreen mainScreen] bounds];
SKPhysicsBody *sBody = [SKPhysicsBody bodyWithEdgeLoopFromRect: screenRect];
[self setPhysicsBody: sBody];

但对我来说,这是让我的其他物理体与屏幕中间的一个不可见物体发生碰撞,并使它们直接离开屏幕边缘而不受任何干扰。

然而,这:

CGRect screenRect = [[UIScreen mainScreen] bounds];
CGRect x2Rect = CGRectMake(0, 0, screenRect.size.width * 1.5, screenRect.size.height * 1.5);
SKPhysicsBody *sBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:x2Rect];
[self setPhysicsBody: sBody];

结果是屏幕中间完全没有奇怪的物体,并且其他物理物体如预期那样与屏幕的侧面发生碰撞。

哈什么?

4

0 回答 0