物理体大于纹理它被分配给(图片)

时间:2015-07-17 22:41:48

标签: ios swift sprite-kit

我的一个精灵“physicsBody”属性一直存在问题。

我已将physicsBody节点“barn”直接放在non-physicsBody节点“mound”之上,没有任何问题。它在模拟器上看起来很好,但是我的节点“hero”不断撞到一个看不见的屏障,当我删除“barn”时不再有问题(所以它必须是“ barn“)。 physicsBody的{​​{1}}元素似乎比实际纹理的barn更向下延伸。 I.E. y和纹理似乎在两个不同的地方,尽管我的physicsBody的参数由纹理组成:

physicsBody

正如您在下图所示,当我对“let barn = SKSpriteNode(texture: barn.texture, size: barn.size) barn.physicsBody?.dynamic = false barn.physicsBody?.pinned = true barn.physicsBody?.affectedByGravity = false barn.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMinY + mound.size.height / 2) ”节点(位于底部棕褐色条顶部的黑色圆圈)施加冲动时,它会被某种看不见的东西阻止节点:

http://imgur.com/gallery/ATb6jgf/new

如果我继续施加一个冲动,它会进入节点,遵循相同的形状模式,但好像只是掉落了50像素:

http://imgur.com/gallery/rpyF3DK/new

如果我向hero添加150像素空间,如下所示:

y-value

然后“barn.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMinY(self.frame) + mound.size.height / 2 + 150) ”节点可以正常移动:

http://imgur.com/Rbkarss

所以我们可以推断的基本上是hero似乎在physicsbody之下,尽管纹理正确放置在土墩的顶部。我是新手,对任何人都有任何意义吗?感谢。

1 个答案:

答案 0 :(得分:0)

对于其他任何有此问题的人,我发现问题出现在我的anchorPoint中。

anchorPoint仅适用于节点本身,而不适用于" physicsBody"。