ひよっこ blog

ゲーム制作について、作ったものや思ったことをつらつら書いていく予定

キーフレームアニメーション byティラノスクリプト

キーフレームアニメーションとは

任意のキーに、座標やスケールなどの指定をすれば、
指定していない部分は勝手に補完してくれるいい感じのアニメ―ジョン。

10秒で2倍に拡大するだけなら、
0秒に1倍、1秒に2倍を指定してあげるだけで、
0.1秒、0.2秒などの間の部分が保管されます。

ティラノスクリプトでは

個人的には3ステップに分けて考えています。

①キーフレーム設定
②再生設定
③実際の要素をアニメーション

私の場合は、①と②はアニメーション用の.ksに記載し、
③だけ、シナリオ部分の.ksに書いてます。

f:id:hiyohiyokko:20160228014751g:plain

今回は↑のアニメーションの例です。

①キーフレーム設定

keyframeの名称はp_animにしておりますが、
ここは任意で好きな名前にしてください。

;▼左右揺れ
[keyframe name="p_anim"]
[frame p=10% x="0" scale=1 rotate="-20deg"]
[frame p=15% x="0" scale=0.9]
[frame p=20% x="0" scale=1 rotate="10deg"]
[frame p=25% x="0" scale=0.9]
[frame p=30% x="0" scale=1 rotate="-20deg"]
[frame p=35% x="0" scale=0.9]
[frame p=40% x="0" scale=1 rotate="10deg"]
[frame p=50% x="0" scale=1 rotate="0deg"]
[frame p=80% x="0" scale=1.1]
[frame p=100% x="0" scale=1 rotate="0deg"]
[endkeyframe]

左右上下の移動がないのですが、
x="0"の部分をx="10"みたいにすれば、移動もつけられます。
縦方向の場合は、y="10"みたいにします。

p=●%の部分が、キーの場所となります。

②再生設定

①キーフレーム設定したものを、
「何秒」で「どのように」再生するかを設定します。

kanimの名称もp_animにしておりますが、
keyframeの名称とバラバラでもOKです。
個人的には間違えにくくなるよう同じにしております。

;音符揺れ_1回
[macro name="p_anim"]
[kanim name="p_anim" keyframe="p_anim" time=2000]
[wa]
[endmacro]

;音符揺れ_繰り返し
[macro name="p_anim"]
[kanim name="p_anim" keyframe="p_anim" time=2000 count="infinite"]
[endmacro]

便宜上[macro name="p_anim"]のように、マクロでくくっていますが、
べつにマクロ化する必要はないです。

count="infinite"を付ければ、繰り返して再生され
付けないと1回きりの再生となります。
1回だけの場合は、[wa]を記載して、再生待ちをしても良いかもです。

③実際の要素をアニメーション

今回は画像ボタンをアニメーションさせます。

button name="p_anim"のp_animは
kanim name="p_anim"のp_animを呼んでいるので、
別の名前にする際は、両方同じ名前にしてください。

;音符の画像ボタン
[locate x=0 y=475]
[button name="p_anim" graphic="frame_note.png" target=*sound01] 
[p_anim]
[s]
*sound01
[cm]
シナリオへ続く。[l][r]
[cm]

まとめ

ちょっとアニメーションするだけで、
結構いい感じになりますね!