为什么基于纹理和基于矩形的物理实体与边循环相交?

时间:2017-12-11 23:06:14

标签: swift game-physics skspritenode skphysicsbody skscene

在我的SKScene课程中,我在游戏中有几个基于纹理的物理实体,例如:

object1.physicsBody = SKPhysicsBody(texture: SKTexture(imageNamed: "object_name1"), size: CGSize(width: 113, height: 107))

object2.physicsBody = SKPhysicsBody(texture: SKTexture(imageNamed: "object_name2"), size: CGSize(width: 113, height: 65))

我也有基于矩形的物理实体,例如:

object3.physicsBody = SKPhysicsBody(rectangleOf: object3.size)

object4.physicsBody = SKPhysicsBody(rectangleOf: object4.size)

我已将游戏边界定义如下:

self.physicsBody = SKPhysicsBody(edgeLoopFrom: CGRect(x: frame.origin.x, y: frame.origin.y, width: frame.width, height: frame.height))

我已为每个对象(SKSpriteNode)设置了所有适当的物理属性。

我遇到的问题是基于纹理的物理体在移动时会超出游戏边界,并且可能会脱离场景,但基于矩形的物体仍然受到边界的限制(如预期的那样)。 / p>

任何想法为什么?

0 个答案:

没有答案