如何为重力设置不同的值?

时间:2013-10-11 23:01:55

标签: physics gravity sprite-kit skphysicsbody

我在Xcode中使用Sprite Kit,我想更改在重力上设置的默认值。 这是我的代码:

SKSpriteNode *sprite = [SKSpriteNode spriteNodeWithImageNamed:@"sprite1.png"];
        sprite.position = CGPointMake(-100+CGRectGetMidX(self.frame), 50 + CGRectGetMidY(self.frame));
        [self addChild:sprite];
        sprite.color = [SKColor blueColor];
        sprite.colorBlendFactor = 1.0;
        sprite.xScale = 0.2;
        sprite.yScale = 0.2;
        [SKPhysicsBody bodyWithCircleOfRadius:50];
        sprite.physicsBody.dynamic = YES;
        sprite.physicsBody = [SKPhysicsBody bodyWithCircleOfRadius:sprite.size.width * 0.5];

现在我知道使用这行代码应该提供默认设置,但我现在无法运行项目:

//self.physicsWorld.gravity = CGPointMake(0.0, -9.8);

帮助?

2 个答案:

答案 0 :(得分:12)

self.physicsWorld.gravity属性由CGVector表示。 所以你应该使用CGVectorMake来改变引力:

        self.physicsWorld.gravity = CGVectorMake(0.0f, -9.8f);

答案 1 :(得分:3)

这是Apple文档中的一个错误 - 文档仍然是CGVectorMake而不是CGPoint