Latest 1.0.1
Homepage https://github.com/ataugeron/SpriteKit-Spring
License Apache 2
Platforms ios 8.0, requires ARC
Authors

SpriteKit-Spring is a set of extensions to perform spring animations with SpriteKit.

Installation

iOS 7

If you need to support iOS 7, you can just drop SpriteKit-Spring.swift in your project.

iOS 8

If you support iOS 8 only, you can install SpriteKit-Spring as a framework with CocoaPods (version 0.36 or above) by adding the following lines to your Podfile:

use_frameworks!

pod 'SpriteKit-Spring'

You then need to import SpriteKit-Spring wherever you want to use it:

import SpriteKit_Spring

Usage

In iOS 7, Apple introduced spring animations in UIKit by adding a new animation method on UIView (see WWDC video and UIView documentation).

This library replicates this feature by adding a spring variant to most factory methods of SKAction. The parameters usingSpringWithDamping: and initialSpringVelocity: have the same meaning as their UIKit counterpart. See below for examples.

Examples

Move

let move = SKAction.moveByX(0, y: 200, 
  duration: 5, delay: 5,
  usingSpringWithDamping: 0.2, initialSpringVelocity: 0)

node.runAction(move)

Move

Scale

let scale = SKAction.scaleXTo(2, y: 0.5,
  duration: 5, delay: 5,
  usingSpringWithDamping: 0.2, initialSpringVelocity: 0)

node.runAction(scale)

Scale

Rotate

let rotate = SKAction.rotateByAngle(CGFloat(M_PI/2),
  duration: 5, delay: 5,
  usingSpringWithDamping: 0.2, initialSpringVelocity: 0)

node.runAction(rotate)

Rotate

Notes

  • Because they use customActionWithDuration:actionBlock:, none of these actions is reversible (the reverse action performs the same animation).
  • All these factory methods are based on the lower level animateKeyPath:byValue:duration:delay:usingSpringWithDamping:initialSpringVelocity: and animateKeyPath:toValue:duration:delay:usingSpringWithDamping:initialSpringVelocity: methods, which can animate any CGFloat key path. If you have a SKNode subclass with a fancy CGFloat property that you’d like to animate, feel free to use these methods!

Creator

License

SpriteKit-Spring is released under the Apache 2 license. See LICENSE for details.

Latest podspec

{
    "name": "SpriteKit-Spring",
    "version": "1.0.1",
    "summary": "SpriteKit API reproducing UIView's spring animations with SKAction",
    "homepage": "https://github.com/ataugeron/SpriteKit-Spring",
    "screenshots": [
        "https://ataugeron.github.io/SpriteKit-Spring/bounce_1.gif",
        "https://ataugeron.github.io/SpriteKit-Spring/bounce_2.gif",
        "https://ataugeron.github.io/SpriteKit-Spring/bounce_3.gif"
    ],
    "license": "Apache 2",
    "authors": {
        "Alexis Taugeron": "[email protected]"
    },
    "source": {
        "git": "https://github.com/ataugeron/SpriteKit-Spring.git",
        "tag": "1.0.1"
    },
    "social_media_url": "https://twitter.com/ataugeron",
    "platforms": {
        "ios": "8.0"
    },
    "requires_arc": true,
    "source_files": "SpriteKit-Spring.swift"
}

Pin It on Pinterest

Share This