精灵套件,强制停止物理

时间:2014-03-16 11:02:59

标签: ios sprite-kit

我正在创建一个正在进行的学习项目(基本上我是代码,同时学习使用框架,希望它对我和其他人都有用)Sprite Kit(你可以找到它{ {3}}如果您有兴趣)但我的代码遇到了一些性能问题。

该项目将多维数据集放在屏幕上并让它们掉落。 here

// The phisics for our falling piece:
// It will be a square, subject to gravity of 5: check common.h (9.8 is way too much for us)
self.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:CGSizeMake(self.size.width, self.size.height)];
self.physicsBody.dynamic = YES;
self.physicsBody.mass = 100;
self.physicsBody.collisionBitMask = piecesCollisionBitmask;
self.physicsBody.allowsRotation = NO;

Here's the class that creates the piece

//schedule pieces
SKAction *wait = [SKAction waitForDuration:1];
SKAction *pieceIsFalling = [SKAction runBlock:^{
    FLPPiece *piece = [[FLPPiece alloc] init];
    [self addChild:piece];
}];

SKAction *fallingPieces = [SKAction sequence:@[wait,pieceIsFalling]];
[self runAction:[SKAction repeatActionForever:fallingPieces]];

我怀疑物理是我的帧速率下降的原因。我希望停止节点上的物理执行,同时在它与其他东西碰撞时将其保持在屏幕上。

这可能吗?我怎么能这样做?

0 个答案:

没有答案