SceneKitのアニメーション(SCNAction)でカスタムのEasing Functionを使う
SCNActionのtimingModeプロパティにはSCNActionTimingMode型でイージング関数を指定できるが、
case linear
case easeIn
case easeOut
case easeInEaseOut
これだけしか定義されていない。
じゃあこういうカーブを適用したい場合は諦めるしかないのかというと、
timingFunctionプロパティがある。
SCNActionTimingFunction型で、Floatを受け取りFloatを返す自由な関数を定義できる。
typealias SCNActionTimingFunction = (Float) -> Float
実装例:easeOutExpo
最後まで読んでいただきありがとうございます!もし参考になる部分があれば、スキを押していただけると励みになります。 Twitterもフォローしていただけたら嬉しいです。 https://twitter.com/shu223/