SceneKitのアニメーション(SCNAction)でカスタムのEasing Functionを使う

SCNActionのtimingModeプロパティにはSCNActionTimingMode型でイージング関数を指定できるが、

case linear
case easeIn
case easeOut
case easeInEaseOut

これだけしか定義されていない。

じゃあこういうカーブを適用したい場合は諦めるしかないのかというと、

timingFunctionプロパティがある。

SCNActionTimingFunction型で、Floatを受け取りFloatを返す自由な関数を定義できる。

typealias SCNActionTimingFunction = (Float) -> Float

実装例:easeOutExpo

ここから先は

197字
文章やサンプルコードは多少荒削りかもしれませんが、ブログや書籍にはまだ書いていないことを日々大量に載せています。たったの400円で、すぐに購読解除してもその月は過去記事もさかのぼって読めるので、少しでも気になる内容がある方にはオトクかと思います。

技術的なメモやサンプルコード、思いついたアイデア、考えたこと、お金の話等々、頭をよぎった諸々を気軽に垂れ流しています。

最後まで読んでいただきありがとうございます!もし参考になる部分があれば、スキを押していただけると励みになります。 Twitterもフォローしていただけたら嬉しいです。 https://twitter.com/shu223/