Skip to content
Better Easing for SpriteKit in Swift
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Example Update for Swift 4.2 Sep 24, 2018
SpriteKitEasingSwift
.gitignore Removed file that shouldn't be tracked Sep 29, 2017
.swift-version Add swift-version Oct 12, 2016
.travis.yml Add example project Feb 11, 2016
LICENSE Moved source to classes folder Sep 29, 2017
README.md Merge remote-tracking branch 'refs/remotes/origin/master' Sep 24, 2018
SpriteKitEasingSwift.png Added title Nov 24, 2017
SpriteKitEasingSwift.podspec Updated for Swift 4.2 Sep 24, 2018
_Pods.xcodeproj Update with new Cocoapods template Sep 29, 2017
easing.gif Added gif Sep 29, 2017

README.md

SpriteKitEasingSwift: Better Easing for SpriteKit in Swift.

CI Status Version License Platform

This easing library began life as a port of buddingmonkey's Objective C SpriteKit Easing library to Swift.

This library extends upon the basic easing equations available in the SpriteKit framework by Apple.

Sprite Kit Easing makes available the following standard easing equations as SKActions.

easing.gif

Use SKEase methods to tween properties of an SKNode, such as:

  • move
  • scale
  • scaleX
  • scaleY
  • rotate
  • fade
  • tweenLabelColor
  • tweenShapeFillColor

If you want to tween a variable, use:

  • createPointTween
  • createFloatTween
  • createColorTween

The SKEase functions return an SKAction that performs the ease. You can then run the SKAction in the same manner you would any other SKAction in SpriteKit.

//eg an SKLabelNode(which extends SKNode) flies in from the right with an elastic tween:
//first create an SKNode, let's create a label node
let titleLabel = SKLabelNode(fontNamed:"Avenir-Light")
titleLabel.text = "Hello world"
titleLabel.fontSize = 65
titleLabel.fontColor = UIColor.white
titleLabel.position = CGPoint(x:self.frame.midX, y:self.frame.midY)
self.addChild(titleLabel)
//perform elastic ease
titleLabel.run(SKEase.move(easeFunction: .curveTypeElastic,
easeType: .easeTypeOut,
time: 2,
from: CGPoint(x: frame.width+titleLabel.frame.width/2, y: titleLabel.position.y),
to:CGPoint(x: -titleLabel.frame.width/2, y: titleLabel.position.y)))

Installation

via CocoaPods

SpriteKitEasingSwift is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'SpriteKitEasingSwift'

To run the example project, clone the repo, and run pod install from the Example directory first.

Don't forget to import the Pod where you would like to use it:

import SpriteKitEasingSwift

via Github:

Clone the project at Github (https://github.com/craiggrummitt/SpriteKitEasingSwift). You will find an example project there as well. To use the framework drag the SpriteKitEasingSwift/Classes folder to your project.

Author

Craig Grummitt

Again, credit and thanks go to SpriteKitEasing and AHEasing and the legend of easing, Robert Penner.

License

SpriteKitEasingSwift is available under the MIT license. See the LICENSE file for more info.

You can’t perform that action at this time.