SpriteKit SKAction easing

前端 未结 2 1012
攒了一身酷
攒了一身酷 2020-12-16 14:00

Well the title gives the question away, how can I apply easing to the SKAction node actions in SpriteKit?

I found that this works:

SKAction *moveActi         


        
相关标签:
2条回答
  • 2020-12-16 14:36

    Apple introduced spring animations in UIKit a couple years ago, by letting you set a spring damping and initial velocity when performing a UIView animation. Unfortunately they didn't implement that in SpriteKit, so I made my own library that does just that.

    It's a set of extensions on SKAction that replicate most factory methods, adding the damping and velocity parameters.

    The code is on GitHub, feel free to use it: https://github.com/ataugeron/SpriteKit-Spring

    0 讨论(0)
  • 2020-12-16 14:59

    I've been using the SKEase framework: https://github.com/buddingmonkey/SpriteKit-Easing It's as simple to use as the standard SpriteKit Actions and adds all the usual more complex eases, cubic, bounce, elastic, back etc. SpriteKitUtils also adds more complex easing types and some handy SpriteKit utilities: https://github.com/raywenderlich/SKTUtils

    The other option is to roll your own using the custom action method, and pass it a block of code with your custom easing/animation function:

    -(SKAction *)customActionWithDuration:(NSTimeInterval)seconds actionBlock:(void (^)(SKNode *node, CGFloat elapsedTime))block
    
    0 讨论(0)
提交回复
热议问题