Tesujiつながりから、次の一手を
人・AI・サービスが、ひとつのネットワークでつながる

出会い、知恵、仕事がつながり、次の一手を生み出す。

公開

ChatGPT × Unity:ゲーム企画を「その日のうちに遊べる仮説」へ落とす

変更履歴

ゲームアイデアを、検証したい仮説・最小ループ・受け入れ条件・テスト項目へ分解し、Unityで最短のプレイアブルプロトタイプを作る方法を理解する。

この記事をシェア

Xでシェア

面白いアイデアと、面白いゲームは別物

「ピンを抜いてキャラクターを助ける」「AIキャラと会話して事件を解く」「物を合成して強くする」。

ゲームのアイデアは一文で言えます。しかし、Unityで実際に遊べる形へするときには、一文では足りません。

必要になるのは、

  • プレイヤーは何を入力するのか
  • 入力した直後に何が変わるのか
  • 成功と失敗はどう決まるのか
  • 何秒ごとに判断が発生するのか
  • 何が面白いと仮定しているのか
  • その仮説が外れたと、どう判定するのか

という設計です。

ChatGPTをUnity開発に使うなら、コードを大量に書かせる前に、「何を最短で検証すべきか」を言語化する役に置くと失敗しにくくなります。

最初に作るべきものは、ゲーム全体ではなく「核心の5〜20秒」

たとえば「ピンを抜いてキャラクターを助けるゲーム」を考えます。

完成版なら、ステージ選択、広告、ショップ、演出、スキン、セーブなどが必要になるかもしれません。

しかし最初のプロトタイプで必要なのは、たったこれだけです。

  1. ピンを選ぶ
  2. ピンが抜ける
  3. 重力や衝突で状況が変わる
  4. キャラクターが助かる、または失敗する
  5. すぐリトライできる

つまり最初に検証したいのは、

「ピンを選ぶ前に考え、抜いた直後に結果が動く」こと自体が気持ちいいか

です。

この仮説が弱いのに、タイトル画面や課金導線を作っても意味がありません。

ChatGPTに渡すべき情報

良いプロトタイプ仕様を作るには、最初に次の情報を与えます。

項目例
プレイヤー入力ピンをタップ
直後の反応ピンが抜ける
世界のルールRigidbodyと重力
成功条件キャラクターがゴールに到達
失敗条件危険物に接触
1プレイ時間10〜30秒
リトライ1タップですぐ再開
今回検証しないものUI装飾、課金、ステージ選択

ここからChatGPTに、GameObject、状態、イベント、成功判定、失敗判定を分解させます。

コードより先に状態遷移を決める

小さなゲームでも、状態が曖昧だとバグが増えます。

最低限、

Ready → Playing → Success / Failed → Retry

くらいは先に決めます。

これを決めずに、各GameObjectが勝手に「ゲーム終了」「リトライ」「入力禁止」を判断し始めると、あとから状態が衝突します。

ChatGPTには、コードそのものより先に、

  • 状態一覧
  • 状態が変わるイベント
  • その状態で許可される入力
  • リトライ時に戻すデータ

を出させる方が役に立ちます。

Unityでは、まずグレーボックスでよい

面白さの検証段階では、完成素材は不要です。

  • Cube
  • Sphere
  • Capsule
  • 単色マテリアル
  • 仮UI

だけで十分です。

なぜなら検証したいのは「絵が綺麗か」ではなく、「入力と結果の関係が面白いか」だからです。

ここで完成アートを先に入れると、面白くない企画を捨てにくくなるという別の問題も出ます。制作コストをかけた分だけ、判断が鈍ります。

プロトタイプにも受け入れ条件を付ける

「とりあえず動いた」ではなく、最低限の完了条件を決めます。

たとえば以下です。

  • ピンを10回連続で操作しても入力不能にならない
  • Success後に追加入力できない
  • Failed後に1タップでリトライできる
  • リトライ後に前回のRigidbody状態が残らない
  • 想定外の順序でピンを抜いてもゲームが停止しない
  • 30秒以内にゲームのルールを説明なしで理解できる

最後の項目はコードテストではありませんが、ゲームとしては重要です。

ChatGPTをテスト設計にも使う

正常系だけを自分で確認すると、想定外操作を見落とします。

たとえばAIに、

このゲームでプレイヤーが壊しそうな操作を20個挙げて

と頼むと、

  • ピンを高速連打
  • Success直前に別のピンを押す
  • 物体が画面外へ落ちる
  • 2つの危険物が同時接触
  • リトライ直後に入力
  • 低FPS時の物理挙動

といった観点を増やせます。

ここで重要なのは、AIに「バグがないか見て」と頼むのではなく、破壊パターンを列挙させることです。

良いKPIは「生成コード行数」ではない

AI導入効果を測るなら、コード量ではなく検証速度を見るべきです。

たとえば、

  • アイデア → 最初のプレイまでの時間
  • 仕様変更 → 再プレイ可能になるまでの時間
  • 1日に捨てられる企画数
  • 1週間に検証できるコアループ数

の方が重要です。

仮にAIでコード量が2倍になっても、プロジェクトが複雑になり、変更に時間がかかるなら逆効果です。

AI生成コードの最大の罠

ChatGPTは、局所的には正しそうなコードを高速に増やせます。

そのため、

  • GameManagerに全部入る
  • Singletonが増える
  • 状態の正本が複数できる
  • Inspector参照が増えすぎる
  • 似た処理が別スクリプトへ複製される

といった負債が、短時間で増えることがあります。

プロトタイプ段階でも、少なくとも

  • ゲーム状態
  • 入力
  • 物理オブジェクト
  • UI

の責務は分けておくと、次の検証へ進みやすくなります。

「完成させるAI」ではなく「捨てる速度を上げるAI」

ゲーム開発では、10個の案を考えて10個全部完成させる必要はありません。

むしろ、10個試して8個を早く捨て、残った2個へ集中できる方が強い。

ChatGPTとUnityの組み合わせで狙うべきなのは、完成速度だけではなく、仮説を安く潰す速度です。

次の一手

新しいゲーム案が出たら、ChatGPTにコードを書かせる前に次の4つを決めます。

  1. このゲームの「面白さの仮説」は何か
  2. それを体験する最小の5〜20秒は何か
  3. 成功・失敗・リトライの状態は何か
  4. 何が起きたら「この案は弱い」と捨てるか

そこまで決まったら、Unityでグレーボックスを作る。

AIを使って完成品を早く作るより、弱い企画を早く殺せる方が、ゲーム開発では価値が大きいことがあります。