分かりやすいようにrepeatActionForeverから変更します
1 2 3 |
//[sprite runAction:[SKAction repeatActionForever:action]]; [sprite runAction:[SKAction repeatAction:action count:2]]; |
- @property(nonatomic)NSTimeInterval duration
- アクションが持続する時間
1 2 3 |
//持続時間を半分にする action.duration = 0.5; |
時間を半分にするので、速さが倍になります。
- @property(nonatomic)CGFloat speed
- スピード係数
1 2 3 |
//スピード係数を倍にする action.speed = 2.0; |
スピードを2倍(デフォルトは1.0)にするので、時間が半分になりdurationを0.5にしたときと同じになります。
- @property(nonatomic)SKActionTimingMode timingMode
- タイミングモード
- SKActionTimingLinear
- durationの間均等に実行
- SKActionTimingEaseIn
- ゆっくりスタートして徐々にスピードをあげる
- SKActionTimingEaseOut
- はやくスタートして徐々にスピードをゆるめる
- SKActionTimingEaseInEaseOut
- ゆっくりスタートして徐々にスピードをあげて、徐々にスピードを下げる
- SKActionTimingLinear
- タイミングモード
1 2 3 |
//タイミングモード action.timingMode = SKActionTimingEaseInEaseOut; |
SpriteKitの最初のテンプレートでtimingModeプロパティのSKActionTimingEaseInEaseOutを試してみます。
ゆっくりスタートしてゆっくり止まる挙動を2回繰り返します。