<PR>本記事にはアフィリエイトリンクが含まれます。
はじめに ── なぜこの記事を書くのか
個人でゲームを作っていると、「企画を詰める」「素材を作る」「実装する」がきれいに順番通りには進みません。実際には全部同時進行で、思わぬところで足が止まります。
この記事は、当サイトで開発中の2Dアクション「STATION OOPS」(Godot 4.7 / GDScript)で、私が実際に踏んだ手順と、途中でぶつかった「あ、これ動かないと話にならないやつだ」という壁について書いた記録です。これから個人開発でゲームを作ろうとしている人が、同じところで詰まらないための参考になればと思います。
Godotで開発を始めることにした理由
エンジン選定の経緯
STATION OOPSはGodot 4.7で開発しています。当サイトでは過去にUnityでミステリーADV「波無島事件」を完成させていますが、今回のような2Dアクションでは、軽量さと2D特化の扱いやすさを優先してGodotを選びました。
なぜそうするのか:ADVのような会話・演出中心のゲームと、プレイヤーが常時操作するアクションゲームでは、求められるエンジンの得意分野が違います。2D物理やアニメーション周りの機能がシンプルに組める点が、今回の企画には合っていると判断しました。
企画を並行して詰めていくスタイルについて
「企画が完全に固まってから実装を始める」のが理想ですが、実際にはキャラクターデザインや操作感を触ってみないと企画側の解像度も上がりません。そのためSTATION OOPSでは、企画・素材作成のチャットと、Godot実装のチャットをあえて分けて並行させています。
なぜそうするのか:計画と実装を同じ場所で進めると、片方の変更がもう片方に無自覚に影響して手戻りが増えます。役割を分けることで、後からの認識のズレを防いでいます。
NovelAIでキャラクターの立ち絵を作る
企画と並行して、まず主人公・ECHO・NOAの立ち絵をNovelAI v4.5 Curatedで生成しました。キャラクターごとにシードを固定し、後から追加のポーズやカットを作る際の比較に使っています。同じシードだけで顔や配色が必ず一致するわけではなく、モデル・画像サイズなどの設定や生成結果の確認も必要です。
ここで一度、素材としては「完成」した状態になります。しかしこの時点で気づくのが──
立ち絵ができた時点ではまだ「静止画」でしかない
当たり前のことなのですが、いざゲームに組み込む段階で改めて突きつけられました。どれだけ良い一枚絵ができても、2Dアクションでプレイヤーが操作するキャラクターである以上、歩く・跳ぶ・止まるといった操作に合わせ、どのように動きを表現するかが課題になります。
「2Dアクションなのに動かない」という壁
静止画のキャラクターをそのままGodotのシーンに置いても、当然ながら突っ立ったままです。ジャンプボタンを押しても画像は変わらず、ただ座標だけが動く。見た目上は「棒立ちのまま宙に浮く」状態になります。
なぜそうするのか:ゲームエンジン側は「移動」や「ジャンプ」という物理的な処理はできても、見た目のアニメーションは移動処理とは別に設定します。複数のフレームを切り替える方法のほか、パーツの移動や回転をAnimationPlayerなどで動かす方法もあります。
GodotにはAnimatedSprite2Dというノードがあり、複数の画像(アニメーションフレーム)を切り替えて動きを表現する仕組みが用意されています。「動かす仕組み」自体はGodot側にあることが分かり、あとは「動きの絵」をどう用意するかが課題として残りました。
AutoSprite.ioで試作してみた
一枚絵から歩行・ジャンプなどのアニメーションフレームを手描きで用意するのは、個人開発者にとって大きな時間コストになります。今回は、静止画からアニメーションを生成できるAutoSprite.ioを使って試作することにしました。
主人公には最低でも以下の9種類の動作(Idle、Walk、Jump、Fall、Push、Pull、Victory、Kneel、Pickup)が必要になる想定で、まずは基本となる数パターンを試験的に生成してみました。
実際に試した結果
試作段階での率直な感触としては、NovelAIで作った立ち絵の雰囲気を保ったまま、動きのフレームを一から手描きする場合に比べ、早く形にできそうだと感じました。一方で、当時は料金プラン(Starter/Pro)ごとの対応範囲を検証中でした。現在の公式案内では、多くの機能はStarterから利用でき、主な違いはクレジット数や優先度などです。細かな利用条件は公式料金表と契約画面で確認してください。
なお、Godotでのアニメーション実装そのものを一から体系的に学びたい場合は、書籍で一通りの流れを押さえておくのも一つの方法です。
Godot 4 & GDScriptではじめる 2Dゲーム開発レシピ(啓田宗一 著)は、Godot 4系・GDScriptに絞って2Dゲーム開発の実装パターンを解説している一冊です。
まとめ ── これから実装を進める人へ
企画・素材・実装を並行して進めていると、「絵はできたのに動かない」という当たり前の壁に、当たり前に足を取られます。今回はその壁に対して、GodotのAnimatedSprite2Dという仕組みと、AutoSprite.ioというアニメーション生成の選択肢があることを確認できました。
次回は、実際にGodot側でプレイヤーキャラクターを動かす実装(CharacterBody2Dでの移動・ジャンプ、Camera2Dの追従など)について書いていきます。
もし動画講座でまとめて学びたい場合は、UdemyのGodotコースも選択肢になります。実装を手順通りに追いながら理解を進めたい人に向いています。
