AIはインディーゲーム開発を劇的に加速させました。この2週間で、Unreal Engine 5と複数のAIツールを組み合わせて、プレイ可能なオンレール・ライトガン・プロトタイプをソロで制作しました。ブレインストーミングやコンセプトアートから、コード、SFX、音楽に至るまで、AIが重い作業を処理してくれたおかげで、雑務に追われることなく、集中してアイデアを出し続けることができました。
制作プロセスの早送り動画は以下にあります。詳細なウォークスルーは記事の最後に掲載されています。
結論として、AIはあらゆる段階に触れ、通常は複数人で行うプロジェクトを一人でのスプリントに変えました。
まず、基本的な問いから始めました。コアループは何か?何が新しいのか?どこでリリースするのか?
インスピレーションは、奇妙な「DOOM x あつまれ どうぶつの森」マッシュアップ動画や、Fall Guys / DOOMクロスオーバー、そしてアーケードの悪魔城ドラキュラレールシューターから得ました。これらのマッシュアップから、オンレールシューティングと近接戦闘を組み合わせるというアイデアが生まれました。プレイヤーは決められたパスを進み、遠くの敵をライトガンで撃ち、近づいてきた敵にはレーザーソードを振り回したり、パリィしたりします。これはクラシックなレールシューターではあまり見られない組み合わせであり、2週間のスコープに最適でした。
コンセプトが決まった後、概要をGeminiに投入し、日ごとのスケジュールを生成させました。完璧だったか?いいえ。しかし、それは確かな基準となり、カレンダー調整の時間を何時間も節約してくれました。私はTencent DocsでToDoリストを常に更新し、毎晩調整していました。
最初の目標:1週目で、銃とセイバーのループを実証する小さなMVPレベルを立ち上げる。
Geminiの最初のパスは、数日でなく数時間で完成し、取り組むべき明確なチェックリストを提供してくれました。
各レベルはこの流れに従います:軽い小競り合いから始まり、難易度が上がり、ボス戦でクライマックスを迎え、引き締まった、高エネルギーの結末を迎えます。
コードを一行も書く前に、ChatGPTにコア機能リストを投入し、実現可能性をチェックしました。AIはMVP計画を提案し、レールシューティングと近接戦闘の組み合わせが実際に楽しいことを証明するのに十分な、短いレベル一つにすべてを凝縮しました。
これは「迅速に反復する」という考え方と一致しています。まず最小限の要素を完成させ、そこから拡張します。私はざっくりとしたルールを使っています。「1日でメカニズムをプロトタイプできるなら、その周りのフルゲームは約1年かかる。2日でプロトタイプするなら、制作は2年近くかかる」といった具合です。つまり、テストビルドは数日で完成できるほど小さく保ち、デモ全体が2週間で完成するようにします。
結論として、1週目のミッションは、コアとなる「撃つ・斬る」ループを確立する簡素化されたレベルでした。
ゲームの音楽的雰囲気を素早く決定するため、私は通常の順序を逆転させ、まず音楽、次にビジュアルという流れで作業しました。Suno AIという強力な生成型音楽ツールを利用しました。このツールは、任意の歌詞とスタイルプロンプトから完全な楽曲を書き、歌わせることができます。
一つの便利なテクニックとして、Suno AIでは歌詞の中に角括弧で囲んだ「メタタグ」を挿入できます。例えば、[Intro]、[Male Voice]、[Interlude]、[Female Voice]、[Guitar Solo]といったタグです。これらのタグは、楽曲の構成、ボーカル、楽器編成、ジャンル(ポップ、エレクトロニックなど)を指示し、瞬時に微調整が可能です。タグの全カタログはSuno AIのウェブサイトにあります。
私がどのように使用したかをご紹介します。
プロンプト: あなたはソングライターだと想像してください。Kendrick Lamarの「Not Like Us」のスタイルで、「Cute Bomber」というタイトルの曲を書いてください。以下を提供してください:
- 完全な歌詞。
- Suno AIのキーワード(ジャンル、ムード、楽器、メタタグなど)で表現されたバッキングトラックの詳細。
素早いA/Bテストの後、最もパンチのあるエレクトロニックな部分を仮のテーマとして採用しました。このトラックはまだミキシングと仕上げの人間による手直しが必要ですが、Suno AIのおかげで、記録的な速さで音楽の方向性を確立できました。
私はサイバーパンクのきらめきと、土曜朝のアニメのようなかわいらしさを融合させようとしています。ネオンきらめくサイバーシティで、ちびキャラサイズの未来兵士たちが地獄の侵略軍と戦う姿を想像してください。表面的には愛らしいですが、ハイオクタンなエッジも満載です。
スタイルの参考にしたのは、Fall Guysのふっくらとした動物の形と明るい色使いに、サイバーパンクのきつい光を放つ看板や回路を融合させたものです。これらの要素を混ぜ合わせることで、魅力的で電撃的なキャンディカラーの戦場が生まれます。
コンセプトアートには、DeepSeekとMidjourneyを活用しました。
静止画のコンセプトアートは始まりに過ぎず、私はコンセプトを実証するオープニングシネマティックも制作しました。全体はAIツールのリレーで完成しました。
いくつかのAIによる連携作業の後、コンセプトトレーラーは完成し、通常の労力のごく一部でゲームのオーディオビジュアルの雰囲気を確立できました。
ソロ開発者として、私は自宅のNASにSVNリポジトリを立ち上げました。Dockerコンテナ一つで完了です。Unreal EngineはSVNと相性が良く、セットアップは簡単で、ゲームプロジェクトに伴う大きなバイナリファイルをうまく扱えます。
適切なバージョン管理を導入することで、自由にブランチを作成し、チェックポイントを設け、恐れることなく実験できます。ロールバックや差分は即座に行え、UE5のエディタには差分サポートが組み込まれているBlueprintで作業している場合は特に重要です。堅牢なソース管理は、迅速なイテレーションを可能にするセーフティネットです。
このゲームはレールシューターなので、UE5のSequencerがすべての中心です。そのイベントトリガーシステムを掘り下げた結果、カットシーンだけでなく、リズム重視のシューターに必要なフレーム単位の完璧なタイミングで、瞬間的なゲームプレイを実行できることを確認しました。
タイムラインはプレイヤーのレールパスとすべてのカメラカットを管理します。Level Sequenceアセット内のキーフレームが位置と回転を固定するため、ビューはプリセットされた経路に沿って滑らかに動き、角度間でクリーンに遷移します。追加のコードは必要ありません。
また、Sequencerを使ってゲームプレイのタイミング(敵のスポーン、アニメーションの開始など)をトリガーする必要がありました。解決策はカスタムイベントトラックです。「EnemySpawn」や「MonsterAttack」マーカーをタイムラインに配置し、レベルBlueprintのカスタムイベントにバインドすると、再生がそのフレームに達したときにゲームロジックが自動的に発火します。これにより、レベルスクリプティングが視覚的で、簡単に調整可能なフローチャートになります。
私は自分の経験とChatGPTのアドバイスを組み合わせてもう一度実現可能性チェックを行い、技術的なアプローチを確定しました。ChatGPTの一番のヒントは、「射撃と斬撃のコンボを証明するために、可能な限り最小限のループを最初に構築すること」でした。私たちのMVPは、レール移動、数体の敵、そしてボス戦を含む短いレベル1つです。
UE5では、そのプロトタイプを素早く作成しました。Sequencerが一人称視点のレール移動を制御し、タイムラインイベントが突進してくる敵をスポーンさせ、プレイヤーはそれらを撃ち落としました。ループがスムーズに再生された後、私はペース、難易度、楽しさに関する実際のデータを得ることができ、自信を持って本格的な開発に取り組むことができました。
プレイヤーコントローラーとレール移動
プレイヤーは自由に移動するのではなく、あらかじめ設定されたレールに「固定」されています。私はCharacterのサブクラスを作成しましたが、すべての移動はSequencerに任せました。Level Sequenceアセットでは、キーフレームがPawnのLocationとRotationを時間とともに制御します。そのSequenceをプレイヤーにバインドすることで、パスに沿って自動的に移動および回転します。また、複数のカメラを同じタイムラインに接続し、追加のコードなしでビューがスムーズに切り替わるようにしました。
戦闘システム
入力はシンプルで、左クリックで射撃、ホールド&ドラッグでレーザーソードを振ります。
武器は2つのBlueprintコンポーネントにあります。1つは銃用(トレース、VFX、ダメージ)、もう1つは剣用(アーク検出、スラッシュVFX、ブロック/パリィ)です。
敵とレベルロジック
私は4種類の敵クラスを作成しました:近接の雑魚敵、飛行型、遠距離飛行型、そしてボスです。最初の3種類はBehavior Treesを持つAIController上で動作し、一度スポーンすると、ツリーが移動と攻撃の決定を処理します。ボスのフェーズと特殊攻撃は、厳密なタイミングのためにSequencerイベントによって直接制御されます。
レベル全体をシーケンスするために、LevelPointアクター(LevelSequenceActorのサブクラス)を作成しました。複数のLevelPointをレールに沿って配置し、それぞれが独自のSequenceアセットを持ち、敵のスポーン、セリフ再生、カメラシェイクなどを振り付けます。LevelPointは次のノードを定義するか、(条件に基づいて)分岐します。プレイヤーがLevelPointに到達すると、そのSequenceが再生され、勝利条件が満たされると(すべての敵が倒されるか、時間が経過すると)、システムは次のLevelPointのSequenceにジャンプします。Sequencerにカスタムトラックを追加することで、ゲームの状態をチェックし、いつ進行するかを決定できるようにしました。これにより、全体の流れがモジュール式の視覚的な「ノード+タイムライン」の絵コンテとなりました。
AIアシストによるBlueprintスクリプティング
Blueprintの質問(「Sequencerイベントから敵をスポーンさせるには?」「マウスのドラッグを近接ヒットに変換するには?」など)が浮かぶたびに、ChatGPTが頼りになりました。段階的な回答を提供し、ドキュメントやフォーラムの投稿を指し示し、Blueprintの疑似ノードのスケッチまでしてくれました。
例えば、実行時にマテリアルを調整する方法を尋ねたとき、ChatGPTは「Create Dynamic Material Instance」ノードを使用するように指示し、参照を保存することを思い出させてくれました。数クリック後、私のレーザーソードの振りは計画通りに敵を照らしました。
AIの「技術コンサルタント」が常駐していることで、障害を乗り越え、スピードと自信の両方が向上しました。そのアドバイスには多少の調整が必要な場合もありましたが、全体としては無数の細かい作業を処理してくれたため、私は開発に集中し続けることができました。
UIはゲームのかわいいサイバーパンクな見た目に合わせる必要がありました。GPT-4oを使って、「スプラトゥーン」風のフラットなゲーム内アートアセットを生成しました。明確なプロンプト(参照画像、色、レイアウトのメモ、テキスト説明)を与え、ネオン・グラフィティ調のUIパーツ(パイプライン式の体力/エネルギーバー、派手なスコアパネルなど)のセットができるまで反復しました。
GPT-4oの画像生成(2025年3月リリース)は強力でしたが、完璧ではありませんでした。
全体として、GPT-4oはゲームチェンジャーです。アイデアが技術的なハードルを上回り、2D UIデザインのための新しいAI駆動型ワークフローが出現しています。
このAIパイプライン(コンセプト → 3Dメッシュ → リグ → アニメーション)のおかげで、通常は数週間かかるプロセスが数日で完了しました。
Geminiにアーケード版悪魔城ドラキュラの流れを学習させ、ノードベースのレベルロードマップを生成させました。その分析は、イントロ→雑魚敵→中ボス→雑魚敵→最終ボスという流れを捉えており、各ステージでの敵の種類と数まで指定されていました。その後、そのスクリプトを自分のデザインに合わせて調整し、レベルプランを最終決定しました。
LevelPointシステムを使って、プレイヤーのレールに沿ってイベントノードを配置することでレベルを構築しました。各LevelPointはSequencer内の独自のLevel Sequenceにリンクされており、敵のスポーン、カメラシェイク、ダイアログなど、すべてを振り付けます。
例えば:
「ノード+タイムライン」方式は、レベルデザインを視覚的な編集に変えます。ペースを調整したり、タイミングを追加したりするには、Sequencer内のイベントマーカーを挿入、削除、または調整するだけです。
固定されたVOスクリプトを使うのではなく、リアルタイムでダイアログを生成するシステムを構築しました。各ストーリーノードで、AIが新鮮なセリフを作成し、それをTTSで音声化します。
仕組みは以下の通りです。
ダイアログ生成フロー
これらすべてが数秒で実行されるため、手書きのスクリプトや録音されたボイスオーバーなしに、プレイするたびに新しいセリフを聞くことができます。
課題と調整
まとめ
許可を得て翻訳・再公開。
moving at the speed of creativity, achieving the depths of imagination.