iOS 7 Sprite套件动画速度更改

iOS 7 Sprite套件动画速度更改,ios,objective-c,ios7,sprite-kit,Ios,Objective C,Ios7,Sprite Kit,我有一个runAction,它正在为一个SKSpriteNode设置动画。我让节点在repeatActionForever中上下移动。我希望节点在向上移动时减速,在向下移动时加速 [node runAction:[SKAction repeatActionForever: [SKAction sequence:@ [[SKAction speedTo:0.1 duration:0.5],

我有一个
runAction
,它正在为一个
SKSpriteNode
设置动画。我让节点在
repeatActionForever
中上下移动。我希望节点在向上移动时减速,在向下移动时加速

[node runAction:[SKAction repeatActionForever:
                       [SKAction sequence:@
                        [[SKAction speedTo:0.1 duration:0.5],
                         [SKAction moveToY:2 * node.size.height / 3 duration:0.5],
                         [SKAction speedTo:1 duration:0.5],
                         [SKAction moveToY:node.size.height / 2 duration:0.5],
                         [SKAction moveToY:node.size.height duration:1],
                         [SKAction moveToY:node.size.height / 2 duration:1]]]]];
当我添加行
[SKAction speedTo:0 duration:0.5]
时,代码的其余部分在0.5秒后以0的速度运行,即使我添加了第二个speedTo action,这会将速度提高到1

问题:如何在节点移动时更改节点的速度,而不是每个方向的速度都停滞


提前感谢。

查找各种类型的
SKActionTimingMode
,并根据需要将其应用于您的情况。这样就不需要像
[SKAction speedTo:0.1 duration:0.5]
这样的东西了

对于使节点上移的操作,可以使用
SKActionTimingEaseOut
;对于使节点下移的操作,可以使用
SKActionTimingEaseIn

SKAction *actionMoveUp = [SKAction moveToY:2 * node.size.height / 3 duration:0.5];
actionMoveUp.timingMode = SKActionTimingEaseOut;

SKAction *actionMoveDown = [SKAction moveToY:node.size.height / 2 duration:0.5];
actionMoveDown.timingMode = SKActionTimingEaseIn;

SKAction *actionMoveUpHalf = [SKAction moveToY:node.size.height duration:1];
actionMoveUp.timingMode = SKActionTimingEaseOut;

[node runAction:[SKAction repeatActionForever:
                       [SKAction sequence:@
                        [actionMoveUp,
                         actionMoveDown,
                         actionMoveUpHalf,
                         actionMoveDown]]]];

我认为,一旦速度等于0,操作停止运行,节点就会有效地暂停。这是正确的。感谢您指出这一点。当第一个动作向上移动到变慢时,我将如何更改第一个动作的速度?当节点向下移动到变快时,我将如何更改第二个动作的速度?您可能可以使用SKAction timingMode,这允许各种模式,包括。。。缓入(即缓入步调导致动画开始缓慢,然后随着动画的进行而加速)或缓出(缓出步调导致动画快速开始,然后随着动画的完成而缓慢)。>>>Apple SKAction类引用中的查找计时模式。