– AI ManiaX –

“Thinking with AI, building with AI.”

UnityMCPは実務で使えるのか?25鍵リズムゲームで試してみた ── Gemini・Antigravity・人間によるAIオーケストレーションの実践記

1. 検証のきっかけ

近年、AIエージェントによるコード生成の実用性が急速に高まっています。私自身、先行してClaude Codeを実務に投入し、高い生産性を実感していました。一方で、長時間利用すると利用上限に達することもあり、別の構成も試したいと考えていました。

模索していたタイミングで、Unity開発をAIエージェントから直接操作できる「UnityMCP」と、それに接続できるGoogleのエージェント環境「Antigravity」の組み合わせが使えることを知り、検証環境を切り替えてみることにしました。ターゲットとしたのは、タイミングや画面解像度の追従がシビアな「25鍵(レーン)の縦スクロール型リズムゲーム」のコアインフラ構築です。

2. 予備知識:Unity、MCP、UnityMCP、Antigravityとは?

今回使用している技術スタックについて、前提知識として簡単に整理しておきます。

  • Unity: 定番のゲーム開発エンジン。今回は2DのUIシステム(uGUI)を使ってリズムゲームの画面を作っています。
  • MCP(Model Context Protocol): AI(LLM)が、PC内のファイルやローカル環境と直接会話して操作するための共通規格です。これがあるおかげで、AIはただコードを提案するだけでなく、実際にファイルを書き換えるといった実務が行えるようになります。
  • UnityMCP: このMCP規格をUnity向けに実装したサーバー・プラグイン群です。Antigravity等のクライアントは、これを介してUnityエディタの操作やC#コードの読み書きを行います。
  • Antigravity: Googleが提供する自律型AIコーディングエージェント環境です。上記のUnityMCPサーバーに接続することで、Unityプロジェクトのファイルを直接調査し、C#コードを書き換え、結果をレポートしてくれます。今回はこの組み合わせでUnity操作を行いました。
  • uGUI(Unity Graphical User Interface): Unityに標準で備わっている**「画面のUI(ボタン、テキスト、体力ゲージ、メニュー画面など)を作るための仕組み」**のことです。今回は、リズムゲームの「レーン」や「降ってくるノーツ(四角い画像)」をこの仕組みを使って画面上に並べています。

3. 開発チームの布陣と役割分担

今回のプロジェクトは、1人の人間と2つのAIがそれぞれの特性を活かして連携する分業体制を組んでいます。

ここで重要なのは、Unity開発において、AIはコードを書くことはできても、エディタ上でのオブジェクト配置やインスペクターの参照設定(紐付け)まではやってくれないという点です。Unityをある程度触って基本操作や構造を理解していないと、エージェントの指示通りに組み立てることすら難しくなります。

具体的な役割分担は以下の通りです。

  • 人間(マイケル):環境構築・オブジェクト配置・インスペクターの紐付け 全体の方向性を決め、安定性を考慮して「WSL2(Linux)」上にエージェント環境を構築。Windows側のUnityプロジェクトをマウントして叩く足回りを固めました。エディタ上で構造を組み立て、オブジェクトを結び付け、最終的に動く状態へ持っていく役割を担います。
  • Gemini:設計レビュー・原因分析の壁打ち役 実装前の「思考フェーズ」を担当。リズムゲームの要件定義や、UI設計のセオリー、エラー発生時の原因分析など、ロジックの壁打ち相手として活用しています。
  • Antigravity:コード生成・実務実装 「実行フェーズ」を担当。仕様に沿ったC#スクリプトの作成や修正を自律的に行い、「このスクリプトはここに置いて、インスペクターでこれを紐付けてください」という運用の要点をセットで報告する実務を担います。現時点ではかなり期待できるエージェントだと感じています。

4. インフラ構築と、立ちはだかる「uGUIの罠」

Geminiと壁打ちした仕様をAntigravityに渡すと、数回のやり取りで「キーボード入力処理」「画面幅に合わせた可変レーン構造」「譜面再生エンジン」「タイミング判定」という、ゲームの骨格となるC#コードが一気に実装されました。

エージェントが吐き出した指示通りに、人間がUnityエディタ上でオブジェクトを配置し、インスペクターの参照を繋ぎ込んでいくワークフローです。ここまでの進行スピードは非常にスムーズでした。

しかし、いざ再生ボタン(▶)を押すと、25本あるはずのレーンが画面中央に1本に凝縮して重なってしまうという、UnityのuGUIでは比較的よく遭遇するレイアウトの問題にぶち当たりました。

プレハブ側のサイズ設定や、Unity特有のレイアウト自動計算の挙動が衝突している模様です。現在も原因を切り分けながら検証を続けています。

5. まとめ:これからの開発に必要な「AIオーケストレーション」

今回検証したかったのは、「AIがゲームを作れるか」ではありません。 「複数のAIエージェントをどう役割分担させれば、人間の開発効率を最大化できるか」にあります。

コードを書くAIは増えましたが、AIは一人で開発を完結させる存在ではなく、人間と役割分担することで真価を発揮します。そのためには、どのAIに何を任せるかを設計する「AIオーケストレーション」が、これからの実務では重要になっていくと感じています。

中央に凝縮してしまった25本のレーンを画面いっぱいに引きずり出し、手元のキーボードを叩いて正しく判定ログを走らせるまであと一歩。

次回は、このuGUIのレイアウト問題をどう解決したのかを紹介します。