SKPhysicsBody 只使用了部分 SKTexture

SKPhysicsBody uses only part of SKTexture

我正在使用带有图像的 SKTexture 并设置 SKPhysicsBody。像那样:

var moleTexture = SKTexture(imageNamed: "moleTop1")

leftPlayer = SKSpriteNode(texture: moleTexture)
leftPlayer.physicsBody = SKPhysicsBody(texture: moleTexture, size: leftPlayer.texture!.size())

开始游戏后,我发现 physicsBody 设置错误。我已经激活了 showPhysics 属性,我的图像看起来像这样:

如您所见,SKPhysicsBody唯一使用的是中间左侧的小部分(蓝色边框)。

如何更改它以便使用整个图像?

看起来很有趣。我相信它只会创建一个轮廓(或一个形状)并且它似乎是从左侧开始的,并且因为没有其他足够接近的像素所以它称之为完成。

我想知道如果这些像素相互接触,您是否会得到不同的结果。我会先尝试验证这一点。如果是这种情况,您可能必须更改纹理或为物理 body.

使用不同的纹理变体

希望对您有所帮助=)