マニュアル: スプライトアニメと判定アニメ(オブジェクト制作ビュー)

このマニュアルについて

このマニュアルでは、ツクールモードのオブジェクト制作ビューにある**「スプライトアニメ」タブ「判定アニメ」タブについて解説します。前者は絵のコマ割り**(どの画像を何コマ、どの速さで見せるか)を作るタブ、後者はそのコマに合わせて判定や画像を動かすタブです。「攻撃の当たり判定を出す瞬間だけ有効にしたい」「歩きのときだけ体の位置を上下させたい」といった作り込みは、この 2 つを行き来して組み立てます。

3 つのタブの役割分担

オブジェクト制作ビューの中央には 3 つのタブがあります。同じオブジェクトを違う切り口で編集しているだけなので、どのタブで直しても結果はひとつのオブジェクトに入ります。

タブ 何を決めるか
プレビュー 判定や画像の基準値(どのアニメーションでもない、素の位置とサイズ)
スプライトアニメ コマ割り(画像の並び・速さ・ループ)
判定アニメ コマごとの値(そのアニメーションの、その時刻での位置・サイズ・有効)

「プレビュー」で決めるのが土台で、「判定アニメ」はそこからの上書きです。 攻撃判定をいつも同じ位置に置きたいならプレビューだけで足り、攻撃の 3 コマ目だけ前に出したいなら判定アニメでキーを打ちます。

選んでいるアニメーションはタブをまたいで持ち回ります。 スプライトアニメで「attack」を選んだまま判定アニメへ移れば、そのまま「attack」の判定を編集できます。

データの持ち方

仕組みを一言でいうと、次のようになっています。

  • コマ割りの原本は AnimatedSprite2D の SpriteFrames です。 スプライトアニメタブはここを編集します。
  • 編集するたびに、AnimationPlayer 側の同名アニメーションのコマ送りのトラックだけが作り直されます。
  • 判定アニメで打ったキーは作り直しの対象外です。 コマ割りを変えても、判定のキーが消えることはありません(時刻は後述のとおり自動で移し替わります)。

このため、どちらのタブから編集を始めても構いません。


スプライトアニメタブ

はじめてのセットアップ

アニメーションに必要なノード(AnimationPlayer と AnimatedSprite2D)が無いオブジェクトでは、タブに案内とボタンが出ます。

出るボタン どんなときに出るか
スプライトアニメを使う(AnimationPlayer + AnimatedSprite2D を作成) どちらも無いとき
Sprite2D を AnimatedSprite2D に変換してスプライトアニメを使う Godot モードで Sprite2D で組んだオブジェクトのとき
テンプレートから読み込み(セットアップ + アニメ登録) セットアップと同時に一括登録したいとき

変換はノード名を引き継ぎます。 AnimationPlayer のトラックはノード名で対象を解決しているため、既存のアニメーションはそのまま生き続けます。画像・配置・コマ割り(hframes / vframes やコマ送りのキー)も引き継がれます。

ボーンアニメーション(Skeleton2D)を使っているオブジェクトでは、このタブは使えません。 コマ割りの仕組みと噛み合わないため、案内だけが出ます。

アニメーションセットとアニメーション

左のペインは「アニメーションセット > アニメーション」の 2 階層になっています。

  • アニメーションセットは「待機」「歩く」「攻撃」のようなまとまりの名前です。
  • その下に、向きごとのアニメーションが並びます(下向きの歩き、右向きの歩き…)。
  • 行の末尾にはコマ数が出ます。

ヴィジュアルスクリプトの「アニメーションを変更」で選べるのは、アニメーション名ではなくアニメーションセット名です。 そのため、アニメーションを作ってもセットに載っていないと、ヴィジュアルスクリプトから選べません。 タブのボタンからアニメーションを追加すると同名のセットも一緒に作られるので、通常は意識せずに済みます。

どのセットにも載っていないアニメーションは、一覧の末尾の「未割り当て」の下に出ます。以前のプロジェクトを開いてもデータを書き換えずそのまま見せるためで、そこからドラッグしてセットへ入れられます。

アニメーションセットを持てないオブジェクト(エフェクト、パーティクル)では、一覧は 2 階層にならず平らな並びになります。エフェクトはアニメーションを 1 本だけ持ち、AnimationPlayer の自動再生にも自動で設定されます。

一覧でできる操作

操作 やり方
アニメーションを追加 ツールバーの追加ボタン(同名のアニメーションセットも作られます)
既存のセットへ足す セットの行に出る「+」
複製 複製ボタン、または Ctrl+D
コピー / 貼り付け Ctrl+C / Ctrl+V選択中のアニメーションセットの中へ貼り付きます)
名前を変更 F2、または右クリック →「名前を変更」
削除 Delete、または右クリック →「削除」
セットへ移す / セットから外す / セットを並べ替える 一覧内でドラッグ

コピーはコマの内容ごと持ちます。 別のオブジェクトへ切り替えたあとでも貼り付けられます。

アニメーションセットの行を削除すると、そのセットだけが使っているアニメーションも一緒に消えます。 複数のセットから参照されているアニメーションは残ります。ツールチップに、いま選んでいる行で何が消えるかが出ます。

向きの設定

向きのエントリを選ぶと、右側に「向き」の 3×3 グリッドと「Auto Y Flip」が出ます。

  • グリッドのボタンで、そのアニメーションをどの向きのときに再生するかを指定します(複数選択できます)。
  • Auto Y Flip」をオンにすると、右向きの絵だけ用意して、左を向いたときはエンジンが左右反転して表示します。
  • 新しくアニメーションを作ったときの既定は、トップビューのプロジェクトなら 8 方向すべて、サイドビューなら左右です(どちらも Auto Y Flip 前提)。

一覧の行には向きがアイコンと文字で出ます。「全方向」「左右」のようによく使う組み合わせは 1 語でまとめて表示されます。

フレームを足す(シートから追加)

シートから追加」で、スプライトシート画像からコマを切り出します。

  1. 画像を選びます(「参照」または中に出ている画像一覧から)。
  2. フレームサイズ(1 コマの大きさ)か、水平 / 垂直のコマ数を入れます。どちらを動かしてももう一方が追従します。
  3. グリッドから使うセルをクリック(またはドラッグ)で選びます。「全選択」「クリア」もあります。
  4. 必要なら「ループ」にチェックを入れて、追加します。
  • 画像を差し替えると、フレームサイズが画像に合わせて測り直されます。 今のフレームサイズで割り切れる画像なら分割指定が保たれ、割り切れない画像(48×40 を 32×32 で見ていた場合など)は 1 コマ = 画像全体になります。
  • グリッドの表示倍率を変えられます。Ctrl + ホイールでも段階的に拡縮できます。
  • 初期判定調整」から、選んだコマを基準に既存の判定を調整する別ウィンドウを開けます。ここでの調整は基準値だけでなく、そのアニメーションに既に打ってある判定キーへも反映されます(キーが古い値を持っていると基準値を変えただけでは見た目が変わらないため)。
  • 1 つのアニメーションに、複数のシート由来のコマを混在させられます。

再生プレビューへ画像をドロップしても「シートから追加」が開きます。 画像一覧ドックから落とすと、その画像を読み込んだ状態で開きます。アニメーションがまだ 1 本も無いときは、先に作るかどうかの確認が出ます。

コマ割りの調整

下部のフレームの帯と、その上のツールバーで調整します。

項目 内容
FPS アニメーション全体の速さ(1〜120、既定は 8)
ループ ループしない / ループ / 往復(往復は最後まで行ったら逆再生で戻ります)
Wait(倍率) 選択中のコマだけの表示時間の倍率(0.01〜10。2 なら他のコマの 2 倍表示されます)
表示倍率 再生プレビューの倍率(自動 / 50% / 100% / 200% / 400% / 800%)
  • コマはドラッグで並べ替えできます。左右へ動かすボタンもあります。
  • コマは Delete でも削除できます。
  • 再生ボタンでプレビューが動きます。ループしないアニメーションは最後のコマで止まるので、「締め」の絵を確認できます。

「自動」の表示倍率はドット絵だと中途半端な拡大になることがあります。 実際の見え方を確かめたいときは 100% や 200% に固定してください。

テンプレートから読み込み

テンプレートから読み込み」から、テンプレートシートを使ってアニメーションとアニメーションセットを一括登録できます。

  • トップビュー用(RPG ツクール形式): 4 方向 × 歩く / 走る / 待機 / 停止(と攻撃)をまとめて登録し、アニメーションセットの割り当てまで行います。攻撃モーションの武器画像にも対応しています。
  • サイドビュー用: テンプレートの行順に沿って登録し、Auto Y Flip 付きで左右に対応させます。

どちらも 1 回の操作(1 つの「元に戻す」)で完了します。 セットアップがまだのオブジェクトでも、必要なノードの作成から一緒に行われます。

読み込みの詳しい形式は、別マニュアル「テンプレートから読み込み」を参照してください。


判定アニメタブ

コマに合わせて、判定や画像の位置・サイズ・有効/無効を時刻ごとに動かすタブです。左で対象の要素を選び、プレビュー上のハンドルで動かし、キーとして登録します。

動かせるもの

左の「要素」の一覧から選びます。要素の種類ごとに、動かせるものが違います。

要素 動かせるもの
オブジェクト本体(紫) 回転 / スケール
オブジェクト画像(白) 位置 / オフセット / 回転 / スケール / 表示・非表示
壁判定(水色)・あたり判定(青)・攻撃判定(赤) 有効・無効 / 位置 / 回転 / スケール / サイズ(形状に応じて 半径・高さ)
接続点 位置
  • 本体に位置はありません。 ルートの位置は実行時に移動処理が書き換えるため、キーにしても意味がないためです。
  • 画像が Sprite2D の場合だけ「コマ番号」「左右反転」「上下反転」も動かせます。AnimatedSprite2D のコマ番号はスプライトアニメタブの管理下なので対象外です。

要素の表示を切り替える

一覧の何もないところを右クリックすると、表示する種類を選べます。設定はプロジェクト単位で覚えます。

「オブジェクト本体」は既定で非表示です。 本体を回す設定は左右反転(Auto Y Flip)と両立しないため、事故を防ぐために慣れた人が自分で出す形にしています。何かを隠している間は、見出しに印が出ます。

シンプルモード(既定)

コマ単位で編集するモードです。

  1. プレビューの下に出ているコマ一覧から、編集したいコマを選びます。
  2. プレビュー上で、ハンドルをドラッグして位置やサイズを変えます。
  3. 変更は選択中のコマへ自動で登録されます。
  • キーはコマの先頭時刻に打たれます。コマの途中にキーができてしまうことはありません。
  • プレビューの操作は、ホイール = ズーム / 中ボタンドラッグ = 画面の移動です。
  • コマ一覧の末尾には「END」行があります。これは実際のコマではなく、**アニメーションの終端(ループの継ぎ目)**を指す行です。360 度まわる回転のように「最後のコマから先頭へ戻る区間」に値を入れたいときは、ここへキーを打ちます。
  • コマ一覧が出ないときは、そのアニメーションにコマ番号のトラックが無い(またはコマが無い)ケースです。詳細モードで編集してください。

詳細モード

時刻を自由に指定するモードです。「詳細モードに切り替え」で移ります。

  • キーのタイムライン編集は、下部の標準 AnimationPlayer パネルで行います(タブを開くと対象のプレイヤーとアニメーションへ自動で切り替わります)。
  • タイムラインでシークし、プレビュー上のハンドルで調整します。
  • 自動同期」をオンにしておくと、ドラッグを確定した時点で現在時刻へキーが登録されます。 オフのときは「現在の状態をキーとして登録」で打ちます。
  • このタブを開いている間は、キーのカット / コピー / 貼り付けのショートカット(Ctrl+X / C / V)が無効になります。 タイムラインをクリックした直後の誤操作を防ぐためです。メニューからの明示的な操作はできます。
  • 下部パネルでアニメーションを切り替えると、左の一覧の選択とプレビューも追従します。

ツールバーの各ボタン

ボタン 内容
+ トラックを追加 選択中の要素のトラックを、このアニメーションへ追加します
現在の状態をキーとして登録 選択中の要素の現在の値を、現在時刻のキーとして挿入します(トラックが無ければ自動で追加され、その旨が通知されます)
自動同期 ドラッグ確定時にキーを自動登録します(詳細モード)
初期キー同期 プレビュータブで設定した判定の値を、0 秒地点へ反映します
原点に戻す 選択中の要素の位置を (0, 0) に戻します
補間 選択中の要素の数値トラックの補間方式をまとめて変更します
グリッド吸着 / 吸着間隔 ドラッグ時に、位置とサイズを指定ピクセルの倍数に合わせます
再生 タブの中でプレビューを再生します

「初期キー同期」について

0 秒のキーは「基準値」として扱われます。 ボタンを押すと、編集中のアニメーションの 0 秒地点に、プレビュータブで設定した各判定の値が入り、存在しない判定のトラックは削除されます。

これは「プレビューで判定を整えたのに、アニメーションを再生すると古い位置に戻る」ときの直し方です。逆に、コマ途中で意図して打ったキーは触りません。

なお、プレビュータブやインスペクターで基準値を変えたときは、0 秒のキーが自動で追従します。 そうしないとシーンを保存したときに古い値へ戻ってしまうためです(保存時に基準値のアニメーションがノードへ適用される仕組みのため)。

補間方式

方式 動き
離散(コマごと) コマが切り替わる瞬間に値が飛びます
継続(なめらか) キーの間が補間されて滑らかに動きます
混在 トラックごとに設定が違う状態(表示のみ)

新しく作るトラックの既定は、画像と本体が「継続」、判定が「離散」です。 判定は「このコマの間だけ有効」のような使い方が多く、補間されると意図しない中間状態ができるためです。既存トラックの設定が揃っていれば、それを引き継ぎます。

ボーンアニメーションのとき

ボーンアニメーション(Skeleton2D)を使っているオブジェクトでは、プレビューに絵を出せません(このタブのプレビューは手描きのため、ボーンによる変形を再現できません)。上部に一行お知らせが出るだけで、判定の配置自体は行えます。


2 つのタブの連携

コマ割りを変えたときのキー追従

判定アニメで打ったキーは絶対時刻で保存されます。そのためスプライトアニメ側で FPS や Wait を変えたり、コマを増減・並べ替えたりすると、何もしなければコマとキーの対応が崩れます。

これは自動で移し替えられます。

  • 編集前と編集後のコマ割りを比べて、キーの時刻が新しいコマの位置へ移ります。
  • 削除されたコマの区間にあったキーは、一緒に消えます。
  • 0 秒のキー(基準値のキー)は常に 0 秒のまま残ります。
  • Ctrl+Z では、コマ割りとキーの両方が元に戻ります。

基準値が全アニメーションへ配られる仕組み

トラックを作ると、0 秒地点に基準値のキーが自動で入り、それが全アニメーションの先頭へ配られます。 これにより、ゲーム中にアニメーションを切り替えても前のアニメーションで動かした値が残りません。


実用例

攻撃の 3 コマ目だけ攻撃判定を出す

  1. 「プレビュー」タブで攻撃判定の位置と大きさを整えます(これが基準値になります)。
  2. 「スプライトアニメ」タブで攻撃のアニメーションを選び、コマ割りを確定させます。
  3. 「判定アニメ」タブへ移り、要素から攻撃判定を選びます。
  4. コマ一覧で 1 コマ目を選び、「有効/無効」を無効にしてキーを登録します。
  5. 3 コマ目を選んで有効に、4 コマ目で再び無効にします。
  6. 再生して、狙ったコマだけ判定が出ているか確認します。

判定が思った位置に出ないときは、「初期キー同期」を押してからやり直してください。 0 秒に古い値のキーが残っていることがあります。

歩きに合わせて体を上下させる

  1. 「判定アニメ」タブで要素からオブジェクト画像を選びます。
  2. コマ一覧でコマを選び、プレビュー上でドラッグして少し上げます(変更は選択コマへ自動登録されます)。
  3. 別のコマでは下げます。
  4. 補間を「継続(なめらか)」にすると、コマの間が滑らかに補間されます。

360 度まわる回転を作る

  1. 「判定アニメ」タブでオブジェクト本体を表示にします(要素一覧の空白を右クリック)。
  2. 先頭のコマで回転 0 度のキーを打ちます。
  3. コマ一覧の末尾の「END」行を選び、360 度のキーを打ちます。

最後のコマに打つと、そこから先頭へ戻る区間で逆回転して見えます。 終端(END)へ打つのが正解です。

右向きの絵だけでキャラクターを作る

  1. 「スプライトアニメ」タブで右向きのアニメーションを作ります。
  2. 向きのエントリを選び、3×3 グリッドで「右」を指定します。
  3. Auto Y Flip」をオンにします。左を向いたときは自動で反転表示されます。

注意点

  • アニメーションがアニメーションセットに載っていないと、ヴィジュアルスクリプトから選べません。 ヴィジュアルスクリプトの選択欄の候補は、アニメーション名ではなくアニメーションセット名から作られます。「未割り当て」に残っているものはドラッグでセットへ入れてください。
  • アニメーションセットの行を削除すると、そのセットだけが使っているアニメーションも消えます。 他のセットからも参照されているものは残ります。
  • 「往復」はスプライトアニメ側だけでは表せません。 ループの有無しか持てないデータ構造のため、往復はアニメーション側の設定として保存されます(操作上は意識不要です)。
  • コマ割りを変えると判定のキーの時刻が移り、削除したコマの区間にあったキーは消えます。 消したくないキーがあるコマは、削除ではなく Wait で調整してください。
  • 0 秒のキーは「基準値」として特別扱いです。 全アニメーションの先頭へ配られ、シーン保存時にもノードへ適用されます。ここに演出用の値を入れると、他のアニメーションにも影響します。
  • プレビュータブで判定を整えたのにアニメーションで戻ってしまうときは、「初期キー同期」を押してください。 0 秒のキーが古い値を持っています。
  • 「オブジェクト本体」は左右反転(Auto Y Flip)と両立しません。 既定で非表示になっているのはそのためです。
  • 判定のトラックの既定の補間は「離散」です。 滑らかに動かしたい判定は、明示的に「継続」へ変えてください。
  • ボーンアニメーション(Skeleton2D)ではスプライトアニメタブは使えません。 判定アニメタブは、プレビューに絵が出ないだけで判定の配置はできます。
  • AnimatedSprite2D のコマ番号は判定アニメでは動かせません。 コマ割りはスプライトアニメタブが原本として管理しているためです(Sprite2D で組んだオブジェクトだけ、コマ番号も判定アニメで指定できます)。
  • 詳細モードを開いている間は Ctrl+X / C / V によるキー操作が無効です。 メニューからは操作できます。