[英]How to create a physics body for an SKSpriteNode with an interior in Sprite Kit (Swift)
[英]iOS Sprite Kit- SKSpriteNode seems to participate in simulation without physics body
我正在使用Sprite Kit开发iOS游戏。
我最近在我的场景中添加了一个SKSpriteNode,并没有为它创建一个物理体。 然而,当我构建并运行时,当玩家的角色(确实有一个物理体)进入SKSpriteNode时,它会旋转并移开,就像它有一个物理体 - 但我没有为SKSpriteNode创建一个。
即使我输入
sprite.physicsBody = nil;
它仍然表现得像是模拟的一部分。
我想知道在制作SKSpriteNode时是否自动创建了一个物理主体,但是我查看了文档并在Google上搜索了它,并且找不到任何建议就是这种情况。
任何帮助或建议将不胜感激。
这是我用来创建精灵的代码(不应该受模拟影响的代码)
-(void)addSprite
{
SKSpriteNode *sprite = [SKSpriteNode spriteNodeWithImageNamed:@"image"];
sprite.position = CGPointMake(40, 30);
sprite.zPosition = 30;
sprite.name = @"spriteName";
[self addChild:sprite];
}
在我的项目的另一部分
[self addSprite];
调用方法。
是的每个SKSpriteNode都带有一个物理体。 最好改变物理体的属性,而不是完全摆脱它。 如果您希望您的精灵在屏幕上并且不与任何其他精灵节点交互,请执行以下操作:
sprite.physicsBody.dynamic = NO;
sprite.physicsBody.collisionBitMask = 0x0;
sprite.physicsBody.contactTestBitMask = 0x0;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.