尝试在我的 iOS7 Sprite 工具包项目中设置物理世界时,我收到以下错误。
Assertion failed: (count >= 3), function CreateLoop, file /SourceCache/PhysicsKit/PhysicsKit-4.6/PhysicsKit/Box2D/Collision/Shapes/b2ChainShape.cpp, line 35.
奇怪的是,在我向项目中添加新场景之前,我使用的代码可以正常工作。我将我的项目恢复到它正确运行的最后一个已知时间,但它仍然无法正常工作。一旦我删除物理世界,该项目将建立。
(SKNode*) myWorld = [SKNode node];
[self addChild:myWorld];
map = [SKSpriteNode spriteNodeWithImageNamed:@"background1"];
map.position = CGPointMake(0.0, 0.0);
[myWorld addChild:map];
//Setup physics
self.physicsWorld.gravity = CGVectorMake(0.0, 0.5);
self.physicsWorld.contactDelegate = self;
CGRect worldFrame = CGRectMake(map.frame.origin.x, map.frame.origin.y-1150, map.frame.size.width, map.frame.size.height + 2000);
myWorld.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:map.frame];
myWorld.physicsBody.categoryBitMask = wallCategory;
程序在尝试执行时终止……</p>
myWorld.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:map.frame];
如果我将此代码放入一个新项目中,它就可以正常工作。关于我的项目发生了什么以及如何解决它的任何想法?