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

标签 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);

帮助?

最佳答案

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

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

关于physics - 如何为重力设置不同的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19328522/

相关文章:

java - Android线性加速,计算轨迹

Android 支持设计 TabLayout : Gravity Center and Mode Scrollable

java - 快速多体重力算法?

swift - 如何在 Swift 3 中使用 NSTimeInterval

java - 使球弹跳停止

c - C中定义数组类型问题

android - Android 中的 "gravity"和 "acceleration"传感器有什么区别?

swift - 如何使用 swift 使车辆或火车在 iOS Sprite Kit Game 中的场景中移动

Swift 代码崩溃且无法正常工作

actionscript-3 - 将凹多边形分解为凸多边形