繁体   English   中英

iOS Sprite Kit- SKSpriteNode似乎没有物理主体参与模拟

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM