BlenderでのAI — チャットから3Dゲームアセットを構築・編集する
1つのコマンドでBlenderをAI Game Developerに接続。エージェントが本物のBlenderで3Dゲームアセットをチャットから段階的に構築・編集します。

AI Game Developerは本物のBlenderを操作できます。1つのコマンドがBlenderを見つけるかインストールし、エージェントが使うアドオンをセットアップして、プロジェクトに接続します。あとはチャットでモデルを説明すれば、エージェントがBlenderでそれを構築し、プロジェクトに保存し、プレビューペインに表示します。これは動くエディタとしてのBlenderでのAIであり、ブラックボックスではありません。すべてのステップは実際のBlender操作で、確認も変更もできます。
この記事では、デモゲームSkyward Keepの1つのセッションを追います。エージェントがBlenderでローポリの宝箱をモデリングし、自分の作業を確認し、続けての編集を普通の言葉で受け取り、その結果をプロジェクトにエクスポートします。あわせて、Blenderの接続方法と、良いモデルが得られる依頼の書き方も扱います。動画はアプリの実際の録画です。エージェントの返答はデモ用のスクリプトですが、その中のツール呼び出しはすべて実際に実行されています。
なぜ一発生成ではなく本物のエディタなのか
Tripoのようなジェネレーターは、参照から完全なモデルを一度に得たいときに優れています。しかしゲームアセットには精密な制御が必要なことがよくあります。柱のセグメント数を正確に決める、2メートルの開口部に合うドア、グリッドにスナップするモジュラーの壁パーツ、ポリゴン予算内に収まる小道具などです。これらはモデリング上の判断であり、それが行われる場所がBlenderです。
エージェントがBlenderで作業すると、次のものが得られます。
- 正確な寸法、数、位置を普通の言葉で指定でき、実際の操作として適用されます。
- 編集可能な結果。モディファイア、オブジェクト、マテリアルは、手作業でも再依頼でも変更し続けられます。
- 毎回新しいランダムな結果ではなく、小さく見直し可能な編集のループ。
ステップ1: /blender でBlenderを接続する
デスクトップアプリまたはgamedev CLIで /blender と入力します。このコマンドはインストール済みのBlender 4.2以降を探します。見つからなければ、ポータブル版のBlenderをダウンロードします。続いてエージェントが操作するアドオンをインストールし、現在のプロジェクト専用の設定でBlenderを起動します。他のプロジェクトには一切影響しません。
このコマンドには後で使うサブコマンドもあります。statusは何がセットアップされBlenderが接続されているかを表示し、openは任意で .blend ファイルを指定してBlenderを開き、findはコンピュータ上のすべてのBlenderを一覧し、removeはエージェントからBlenderを切断します。特定のインストールを使いたい場合はsetupにそのBlenderのパスを渡せます。またsafeオプションはBlender内のエージェントのPythonを安全なサブセットに制限します。アプリがBlender向けにダウンロードするものはすべて正確なバージョンに固定され、使用前に検証されます。
セッションでBlenderを有効にする
Blenderはパッケージで、そのツールはセッションのTools行にあるスイッチです。モデリングしたいセッションでオンにすれば、他のセッションはそれぞれの選択を保ちます。初めて使う場合、アプリ内の短いヒントがこのセッションでBlenderを試すことを提案し、続けてサンプルモデルの構築を提案するので、一連の流れを一度体験できます。
エージェントが必要としたときにBlenderが閉じていれば、自動的に起動されます。またアプリのウィンドウは最前面に保たれるので、Blenderが動作している間も入力し続けられます。
ステップ2: 最初のアセットを依頼する
明確なパーツを持つ小道具から始めましょう。デモの依頼は一文です。
「Blenderを使って、Meadow Isle向けのローポリの宝箱をモデリングして。木製の本体、暗い金属の帯、小さな金の錠前付きで。」
エージェントはBlenderのPython APIで1回ずつ呼び出しながら宝箱を構築し、報告する前にビューポートのスクリーンショットを撮って自分の作業を確認します。その要約はシーンの内容を説明します。面取りしたエッジの木製本体、本体と蓋を横切る2本の暗い鉄の帯、前面の金の錠前です。また蓋は独立したピボットに設定されており、後から開けられます。こうした判断が次の編集を容易にします。

良いモデリングのプロンプトには次のものを含めます。
- 実世界でのサイズ。アセットをゲームのスケールに合わせるため。
- スタイル。ローポリ、スタイライズド、リアルなど。
- 構造。個別のパーツが何であるか。
- 予算。三角形数のような指定。
- ファイルをプロジェクト内のどこに保存するか。
ステップ3: 小さく具体的な編集で洗練させる
ここが一発生成がうまくできない部分です。モデルは実際のオブジェクトとしてBlender内にあるため、各依頼は指定した箇所だけを変更し、残りは維持します。デモでの続けての依頼はこうです。
「いいね! 蓋を少し開けて、中に金貨を数枚入れて、それからプロジェクトにエクスポートして。」
エージェントは蓋をピボットで38度回転させ、金貨を9枚中に配置し、シーンをGLBファイルとしてプロジェクトのmodelsフォルダにエクスポートし、チャットの隣の3Dプレビューペインで開きます。Blenderのシーンはさらなる変更のために開いたままです。

同じように機能する他の編集例です。
- 「金属の帯をもっと細く、もっと暗くして。」
- 「3つのサイズバリエーションを作って、それぞれ別のファイルとして保存して。」
- 「原点を底面の中央に移動して、床に置けるようにして。」
一度に1つの変更を依頼し、そのたびにプレビューを確認しましょう。編集が意図と違う方向に進んだらそう伝えれば、エージェントが調整します。ファイルをBlenderで開いて手作業で変更し、何をしたかをエージェントに伝えて、そこから続けさせることもできます。
レベルデザイン向けのモジュラーパーツ
Blenderは、パーツ同士を正確に組み合わせる必要があるモジュラーのレベルキットに特に役立ちます。共通ルールを指定してセットを依頼しましょう。たとえば「壁、出入り口、角、床タイルをすべて2メートルグリッド上に、同じ石の縁取りで」と言えば、エージェントはセット全体で寸法の一貫性を保ちます。
ステップ4: アセットをゲームに取り込む
保存されたファイルはプロジェクト内にあるので、次の依頼でそれをエンジンに取り込めます。AI Game Developer経由で接続されたUnity、Godot、Unrealのプロジェクトでは、モデルのインポート、マテリアルの設定、シーンへの配置をエージェントに依頼できます。Blender専用のアセットプロジェクトのような普通のフォルダでチャットし、完成したモデルを後からゲームへ移すこともできます。
BlenderとTripoの併用
2つのアプローチはうまく組み合わせられます。Tripoで参照画像から完全なベースモデルを生成し、それをBlenderで開いてエージェントに整えさせます。スケールの修正、パーツの分割、原点の設定、ジェネレーターが見落としたディテールの追加などです。逆の進め方もあります。Blenderで形をブロックアウトし、そのビューをレンダリングして参照として使う方法です。
Blender対応はリリース0.18.0で登場し、0.20.0でパッケージになりました。詳細はリリースノート https://ai-game.dev/releases/0.18.0 と https://ai-game.dev/releases/0.20.0 にあります。試すには ai-game.dev/download でアプリをダウンロードし、プロジェクトを開いて /blender と入力してください。

