StepMania 3.9のテーマを作成する~アニメーション編~

StepMania 3.9のテーマを作成するのアニメーション(主にBGAnimation)についての内容です。

この内容は誤記などの対応はしますが、サポートの対象外とします。

目次

BGAnimationの基本

BGAnimationの基本についてタイトル画面を例に説明します。

まず、『BGAnimations』→『ScreenTitleMenu background』→『BGAnimation.ini』をメモ帳で開きます。

中身は次のように記述されていると思います。

[BGAnimation]

[Layer1]
File=bg.png
Type=0

これがBGAnimationを記述する際の基本形となり、各部分は次のようになります。

[BGAnimation]
BGAnimationを使用するという命令です。
[Layer1]
Photoshopなどにあるレイヤーの事で、数値が高いほど上位のレイヤーになります。
分からない方はある1枚の画像を使うという命令で、数値が低い画像から順番に上に重ねていく事になると覚えて下さい。
File=bg.png
使用する画像ファイル名が書かれています。
Type=0
このレイヤーの表示方法です。種類については話が長くなるため省略します。通常0を使うと覚えて下さい。
Command=
この例では省略されていますが、フェードインなどのアニメーションコマンド文を書く場所です。

覚えることを少なくするためにかなり省いた説明となりましたが、以上が基本事項となります。

BGAnimationの設定

上の『BGAnimationの基本』で説明したタイトル画面を使って実際にアニメーションを設定します。
iniファイルの中身を次のように書き換えて保存して下さい。

[BGAnimation]

[Layer1]
File=bg.png
Type=0
Command=diffusealpha,0;linear,3;diffusealpha,1

その後、StepManiaを起動してタイトル画面を確認して下さい。

タイトル画面の背景がフェードインしたと思います。

このフェードインは3つの命令(コマンド文のセミコロンまでが1つの命令)を使っており、各命令は次の意味を持ちます。

diffusealpha,0
レイヤーの不透明度を0(=透明なので表示されない)にする。
linear,3
直前の命令までの状態から直後の命令の状態まで3秒の時間を掛ける。
diffusealpha,1
レイヤーの不透明度を1(=表示)にする。

つまり、今回の場合は3秒掛けて画像をフェードインさせるという意味を持ったアニメーションを設定した事になります。

確認が終わった方は、タイトル画面に設定したコマンド文を削除して元の状態に戻しておいて下さい。

アニメーションコマンド

アニメーションの作成によく使われる命令には次のようなものがあります。(数値は自由に設定できます)

命令 動作
x,320 中心X座標を320にする。
y,240 中心Y座標を240にする。
rotationx,30 X軸を基準に30度回転させる。(上下回転)
rotationy,30 Y軸を基準に30度回転させる。(左右回転)
rotationz,30 Z軸を基準に30度回転させる。(平面回転)
zoom,1.5 縦横比を変えずに元の大きさの1.5倍に拡大する。
diffusealpha,0.5 不透明度(アルファ値)を50%にする。
sleep,2.5 次の命令を実行するまで2.5秒間待機する。
linear,1.5 直前の命令までの状態から直後の命令の状態まで1.5秒の時間を掛ける。
zoomtowidth,320 横幅を320ピクセルに収まるように拡大・縮小する。
zoomtoheight,240 縦幅を240ピクセルに収まるように拡大・縮小する。

以下はよく使われるコマンド文の例です。

名称 コマンド文
座標指定 x,320;y,240
大きさ指定 zoomtowidth,640;zoomtoheight,480
基準座標の変更(左上基準) horizalign,left;vertalign,top
基準座標の変更(左下基準) horizalign,left;vertalign,bottom
基準座標の変更(右上基準) horizalign,right;vertalign,top
基準座標の変更(右下基準) horizalign,right;vertalign,bottom
基準座標の変更(中央基準) horizalign,center;vertalign,middle
横スクロール x,160;y,240;linear,5;x,480
縦スクロール x,320;y,120;linear,5;y,360
回転 rotationz,30;linear,3;rotationz,60
拡大 zoom,1;linear,3;zoom,2
縮小 zoom,1;linear,3;zoom,0.5
フェードイン diffusealpha,0;sleep,1;linear,1;diffusealpha,1
フェードアウト diffusealpha,1;sleep,1;linear,1;diffusealpha,0
フェードイン→アウト diffusealpha,0;linear,1;diffusealpha,1;sleep,3;linear,1;diffusealpha,0

最後に、BGAnimationについてより詳しく知りたい方はfoonmixさんのBGAnimations講座が分かりやすいので、そちらをご覧下さい。(一部掲載されていないコマンドも存在します)