我想知道如何使用swift更改sprite kit中节点的下落速度,我已经尝试过改变引力,但是当它变得非常快时会开始崩溃。 我已经这样做了,它有效,但正如我所说它崩溃了:
var velocity:CGFloat = 0
override func update(currentTime: CFTimeInterval) {
velocity = CGFloat(score*3)
self.physicsWorld.gravity = CGVectorMake(0, -velocity)
}
谢谢!
答案 0 :(得分:1)
您可以在节点上施加力,而不是更改场景的重力。
禁用重力
self.physicsWorld.gravity = CGVectorMake(0,0)
使用声明
设置每个下降节点的name属性node.name = @"fallingNode"
然后,在更新功能
中self.enumerateChildNodesWithName("fallingNode", usingBlock: {
(node: SKNode!, stop: UnsafeMutablePointer <ObjCBool>) -> Void in
// do something with node or stop
node.physicsBody?.applyForce(velocity)
return
})