2014-08-29 83 views
0

我想旋转一个SKSpriteNode的骨骼图像。我创建它并更新时,我试着运行一个可以旋转它的SKAction。这没有做任何事情。我甚至试图每次更新10度时减少zRotation,但仍然没有发生任何事情。我确信应用程序不会像在更新时执行println一样冻结,文本不断滚动。此外,该应用程序的其他部分正在响应。它只是不旋转的骨头。swift:SKSpriteNode不在更新函数中旋转

代码:类

let bone = SKSpriteNode(imageNamed: "bone") 
let rotateBone = SKAction.rotateByAngle(30, duration: 1) 

在didMoveToView

bone.anchorPoint = CGPointMake(0.5, 0.5) 
bone.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame)) 
bone.zRotation = CGFloat(arc4random()) 

self.addChild(bone) 

设置试图转动

override func update(currentTime: NSTimeInterval) 
{ 
    bone.runAction(rotateBone) 
} 

回答

0

开始

宣言您重新运行一个每个更新(每个帧):

override func update(currentTime: NSTimeInterval) 
{ 
    bone.runAction(rotateBone) 
} 

操作随时间推移而运行。运行一次,让它做好工作。重复重新启动它只会取代以前的操作并重置它。

+0

这不完全正确,因为当我做了bone.zRotation- = 10时,它也没有旋转。 – Sam 2014-08-29 15:00:54

+0

确实骨骼已启用物理? – LearnCocos2D 2014-08-29 15:29:49

+0

编号我张贴的代码是影响骨骼节点的所有东西 – Sam 2014-08-29 15:36:35