为什么我不能在SpriteKit中将一个Joint添加到场景physicsWorld中

时间:2014-01-25 16:17:45

标签: ios objective-c sprite-kit

我正在尝试将一个关节添加到sceneWorld场景中,但我得到了一个EXC_BAD_ACCESS。这是我正在使用的代码。

SKPhysicsJointFixed *fixedJoint = [SKPhysicsJointFixed jointWithBodyA:self.mousePoint.physicsBody bodyB: self.box.physicsBody anchor:touchPoint];

[self.physicsWorld addJoint:fixedJoint]; // Error happens here.

触摸开始时我正在调用它。有谁知道发生了什么?

3 个答案:

答案 0 :(得分:14)

我遇到了同样的问题,答案很简单, 只需将节点添加到场景中,然后再将其添加到physicsworld。

答案 1 :(得分:0)

我有同样的问题。 问题是:我忘了将physicsBody添加到其中一个节点。 所以我传递的是“零”。这是我错误的原因。

尝试这样的事情:

node.physicsBody = SKPhysicsBody(rectangleOfSize: node.size)

答案 2 :(得分:0)

我有类似的问题而且它发生了,因为我在将节点添加到场景之前创建了物理体。

试试这个 1个init节点 2将其添加到场景中 3附上物理机构 4做任何关节

(我正在切换2和3而且它没有工作