有没有办法使用spriteKit使重力来自屏幕的不同部分

时间:2014-06-05 22:48:27

标签: ios objective-c sprite-kit

有没有办法用spritekit框架改变引力的默认行为?通常,重力将东西拉向屏幕的底部。是否有办法使重力可以拉向另一个方向?

1 个答案:

答案 0 :(得分:0)

SpriteKit中的重力默认值为

self.physicsWorld.gravity = CGVectorMake(0.0, -9.8); //dx = 0, dy = -9.8

这是使任何物体落到屏幕底部的原因。

同样,要使对象朝不同方向前进,可以在initWithSize方法中明确设置

self.physicsWorld.gravity = CGVectorMake(-9.8, 0.0); //Towards left
self.physicsWorld.gravity = CGVectorMake(9.8, 0.0); //Towards right
self.physicsWorld.gravity = CGVectorMake(0.0, 9.8); //Upwards
self.physicsWorld.gravity = CGVectorMake(9.8, 9.8); //Towards top-right corner

我希望你现在明白这一点。

注意:默认值为-9.8,因为我们在现实世界中经历的自然重力是9.8米/秒/秒。您可以更改此值以更改场景中节点所经历的重力强度。

您还需要了解有关CGVectorgravitySKPhysicsWorld属性的更多信息。