マリオ風アクションを全自動生成!生成AIに2Dスクロールゲームを作らせるプロンプト

こんにちは!いおんです。
このブログ「gemini-study-lab.com」では、プログラミング未経験から生成AIを使ってどこまで本格的な開発ができるかに挑戦しています。

今回は、ゲーム開発の王道である「2D横スクロール・ジャンプアクション」をAIに全自動生成させてみました!

マリオやロックマンのようなゲームの要となる「重力」や「ジャンプの物理演算」を、AIは言葉の指示(プロンプト)だけでどこまで再現できるのか?その驚きの結果と、実際に使用したプロンプトを大公開します。

実際に完成したゲームのプレイ動画(GIF)

まずは、論より証拠!AIが数分で書き上げ、自律的に.exeファイル(PC用アプリ)にまでビルドしてくれたゲームの実際のプレイ画面がこちらです。

いかがでしょうか?
図形だけのシンプルなグラフィックですが、重力の挙動や強制スクロールの疾走感がしっかり再現されています。

しかも、ただジャンプするだけではありません。以下の11個のギミックを最初からすべて「全部乗せ」で実装させています。

  • 2段ジャンプ
  • スライディング(障害物くぐり)
  • 空中ダッシュ
  • 敵への踏みつけ判定
  • ランダム出現する足場(リフト) …など

普段プレイしているFPSゲーム(Apexなど)でお馴染みの「スライディング」や「空中ダッシュ」といったキャラコン(キャラクターコントロール)を2Dアクションに落とし込んだ、かなり操作していて気持ちの良いゲームになりました!

AI(Antigravity)に投げた「要件定義プロンプト」大公開

今回も開発に使用したのは、自律型AIエージェント「Antigravity」と、推論能力の高いGemini 3.1 Proモデルです。
外部の画像ファイルは一切使わず、図形の描画とPythonのpygameだけで完結させるために、以下のような指示を出しました。この要件定義はGeminiで作成しました。

【要件定義】
Pythonの pygame を使用して、デスクトップで動作する「2D横スクロール・ジャンプアクションゲーム」を作成し、最終的に PyInstaller を使って単一の実行ファイル(.exe等)にビルドしてください。

【主な機能とゲームルール】

  1. 基本システム: 画面は強制的に右へスクロールしているように見せます(プレイヤーは画面左寄りに固定され、地形や障害物が右から左へ流れてくる形式)。
  2. 重力とジャンプ: プレイヤーには常に下向きの重力が働き、地面(または足場)に接触すると落下が止まります。Spaceキーでジャンプします。
  3. 【重要】全11種のアクションとギミックの実装:
    以下の機能をすべてゲームロジックに破綻なく統合してください。
    ① 2段ジャンプ(空中でSpaceキー)
    ② スライディング(下キー押下中で当たり判定を半分にし、頭上の障害物を避ける)
    ③ 空中ダッシュ(空中で右キーで滞空しながら前進)
    ④ 踏みつけ判定(赤い障害物の上部に乗ると破壊してスコア獲得、横から当たるとダメージ)
    ⑤ 空中リフト(様々な高さにランダムで出現する緑色の足場)
    ⑥ ホバリング(ジャンプ中に上キー長押しで落下速度低下)
    ⑦ アイテム取得による一時的な3段ジャンプ解放
    ⑧ 無敵ダッシュスキル(Shiftキーでゲージを消費し、障害物を破壊しながら高速スクロール)
    ⑨ 視差スクロール(背景に流れる図形の速度を複数レイヤー用意して奥行きを表現)
    ⑩ スコア倍率コイン(空中の黄色い円形アイテム)
    ⑪ 迫る即死壁(画面左端からゆっくり迫ってくる黒い壁。触れると一撃でゲームオーバー)
  4. 描画: 外部画像ファイルは一切使わず、pygame.drawを用いた図形(プレイヤーは青い四角形など)のみで構成してください。

【開発プロセスとビルドへの指示】

GUIの自動テストはスキップし、直ちに pyinstaller --onefile --noconsole app.py を実行して dist フォルダ内に実行ファイルを生成してください。エラーが出た場合は自律的に修正・再試行してください。

上記の全機能を統合したゲームロジックを app.py に実装してください。

ターミナルで pip install pygame pyinstaller を実行してください。

AIエンジニアとしての見どころ

このプロンプトの最大のポイントは、「GUIの自動テストをスキップさせ、直ちに PyInstaller で実行ファイル(.exe)にビルドさせる」という指示です。
AIはコードを書くだけでなく、自らターミナルでコマンドを叩いて、誰でもPCで遊べる完成品の形にして納品してくれました。

開発を終えて:AIはもはや「専属のゲームクリエイター」

重力の計算、当たり判定、そして画面のスクロール。これらをゼロからプログラミング言語で記述しようと思うと、初心者にはとてつもない壁になります。
しかし、明確な「要件定義(プロンプト)」さえ渡せば、AIがその壁を一瞬で飛び越えてくれる時代になりました。

皆さんもぜひ、自分だけの「こんなゲームがあったらいいな」をAIにぶつけて、オリジナルゲームを作ってみてください!

コメント

タイトルとURLをコピーしました