Cocos2d-xとSpineの連携 - アニメーションを作る(2) | 渋谷で働くUnity野郎

渋谷で働くUnity野郎

備忘録として有効活用していきます。

早速ガンガンいくよー。

SET UPをANIMATEにしましょう。
$Iichinのブログ

なんか凄そうなタブがでてきましたね。
$Iichinのブログ
左側に表示されている「Dopesheet」をクリックして下さい。
基本はこの形で編集します。

さて、次に右腕にアニメーションをつけてみましょうか。
右腕のboneを選択します。
するとTransformタブに緑色の鍵マークが現れました。
$Iichinのブログ

この鍵こそがKeyFrameの設定です。
少し腕を回転させてみましょう。
$Iichinのブログ

あ"あ"あ"っっ
boneを腕の付け根から初めなかったばかりに気持ち悪い動きしてる。。。

とりあえずright slotの中身をrootに戻して、right armのboneをTranslateで移動させて、また再びright slotをright armのboneに移しました。

うん。ばっちし。
$Iichinのブログ

間違えても大丈夫ってことをアピールするために間違えたことにしといてください。

さて、すると動かした部分がオレンジ色に変わっています。
このオレンジは値が変わりましたよー。っていうサインです。
この値で決定するなら、オレンジ色の鍵マークをクリックして赤色にします。
これで、0フレームにおける、右腕の場所が保存されました。
$Iichinのブログ

次に10フレーム目の右腕の場所を保存します。
まずは青い線を10に持っていきます。
$Iichinのブログ

次に腕を回転させて、鍵マークを押して場所を保存します。
$Iichinのブログ

最後に青い線を20フレーム目に持って行って、腕の場所を0フレーム目と同じ値に変更します。
0フレーム目に青い線を持っていくと、値を確認できるので、それを入力するだけでOKです。
$Iichinのブログ

これで右腕が動きます。
アニメーションを動かして見ましょう。
その前に繰り返しボタンを押しておきましょう。押さないと20フレーム以降、0フレームに戻ってこないためです。
$Iichinのブログ

それっぽく右腕が動きました。
後は工夫次第でジャンプや、歩いたりできます。
是非歩かせてみて下さい。楽しいので。

こんな感じでアニメーションを本当に簡単に作成できます。
これを他のプロジェクトに使用するためには、Exportで吐き出す必要があります。
$Iichinのブログ

コレ以降は60$払えば出来ます。
ちなみにcocos2d-xでは吐き出す形式はJSON形式でOKです。
Prety printは改行コードを挿入して人間が見やすい形式で吐き出してくれますが、容量として重たくなるのでケースバイケースで選択して下さい。

実際にcocos2d-xで動かす際は、coco2d-xの2.14のprojectで。

#include

using namespace cocos2d::extension
を追加して、

CCSkeletonAnimation *animation = CCSkeletonAnimation::createWithFile("????.json", "?????.atlas");
????は吐き出したファイルに当たります。
????.atlasはTexturePickerで吐き出す。

そして
this->addChild(animation);で動きます。


cocos2d-xとspineの連携も非常に簡単にできるみたいです。

前回:下準備