Blenderで作成したオブジェクト(ボーン&アニメーション付き)をdaeで出力して、それをSceneKitで使う時のメモ。
まずBlenderでの注意事項。
オブジェクトとボーンの親子関係を作る時に、オブジェクトとボーンを選択してcontrol+pするとできるけど、オブジェクト→ボーンの順に選択する。逆だとできない。
ポーズモードで回転させたオブジェクトを元に戻すのは option + r
【Blender】ボーンを動かしてアニメーションを作成する | ユガラボ↑すごく参考になったページ
daeファイルを出力する時には対象を選択しといて
Selection Only
Include Children
Include Armatures
にチェックを入れる。

次にXcode。
Xcodeにインポートしたdaeファイルを見るとやっぱりx軸周りに90度回転してる。なのでシーンへの追加はコードでやる方が精神的にはいい(俺の場合は、だけど)。
ともかくこの流れでアニメーション付きオブジェクトをインポートするとXcodeのScene Editorの右側にある”Animations”のところ(下図の赤い丸のとこね)に項目が表示されてる。多分Blenderで設定したアニメーションっぽい。

上図の青矢印のところのボタンを押すとアニメーションが設定できる(コードならSCNActionに相当するんかな)けど、その場合は”Animations”のところには何も表示されないからどうなってんの?と思ってた。
ただここで表示される名前はBlenderで設定したアニメーション名とは違うけど(ボーンとオブジェクトの名前はBlenderで設定したまま来てる)。
なお、SCNNodeクラスのboneオブジェクトに対し、
for (NSString *key in bone.animationKeys) {
// [bone pauseAnimationForKey:key];//止める
[bone setSpeed:10.0 forAnimationKey:key];//speed変更
}
みたいにすればそのボーンに設定されたアニメーションを止めたり、speed(って何だ?リファレンスにも書いてねえ!)の変更なんかもできた。
↑SceneKitに持ってきた時の結果。
ある程度のアニメーションをBlenderで作っておいて、動かす・止めるタイミングや微調整はコード側でもできそうだな。