見出し画像

AI×創作RTA その2 2日でゲーム制作の環境構築をする【Godot Engine, Antigravity, Codex CLI】

こんにちは!AIで爆速で創作をする「AI×創作RTA」シリーズ2回目の記事です。
1回目はこちら!限界オタク係のGeminiと整理整頓係のChatGPTと共に世界観設定を固めました。

2回目となる今回は、Antigravityをメインエディタとし、Codex CLIを使用しGodot Engineでゲームを作れるようになるまで環境構築する過程をお見せします。筆者はWEBエンジニアですが、ゲームをマトモに作ったことがなく、Godot Engineの知識がありません。ゆえにVibe Codingとなる点、ご了承いただければと思います。


何故Godot Engineを選んだか?

このブログ記事を読み、Godot Engineの実体がテキストファイルであることを知り、コーディング系AIエージェントと親和性が高いと思ったからです。

また、展示用にはAndroidタブレットで試遊コーナーを設ける予定なので、Android向けにビルドできるところも選定理由のうちに入ります。

今回はとにかく生成AIなんでも展示会Vol.05合わせで突貫で作りますが、世にはわかりやすい入門書もございます。筆者はこれらの本を購入し積読しているので、あとでしっかり読んで写経しようと思います。

素材が先?ゲームシステムが先?

AI系の人ではなさそうなのでリンクは控えますが、複数のゲームクリエイターさんに共通して、ゲームシステムを先に組んでしまった方がよいとの見解があるようです。
何故なら、素材を作ったりお借りして組み込んだりする作業はテンションが上がる行為ですが、ゲームシステムはさほど(ゲームプログラマーでない限り)モチベーション高くやれる作業ではないから先に終わらせましょう、ということでした。
今回のゲーム制作も、「素材は自分で作る!だからAI、システム側を助けてくれ~~!」と藁にもすがる思いでCodex CLI環境を整えます。

それでは環境構築を始めていきましょう!

環境を準備する

WSL2のインストール

こちらのドキュメントを参照してインストールします。

PowerShellを管理者として実行して下記コマンドを打ちます。

wsl --install

WSL2にUbuntuを入れる

上記コマンドを打った後再起動したらWSL2が使えますが、中身にLinuxディストリビューション(動かすためのOS)が入っていない場合がありました。下記ドキュメントを読みましょう。

PowerShell(管理者として実行)で、インストール可能なLinuxディストリビューションを一覧にします。

wsl.exe --list --online

今回はUbuntuを使いたいので、続けてインストールコマンドを打ちます。

wsl.exe --install Ubuntu

するとUbuntuを使う時のユーザ名とパスワードを設定されるよう促されるので、設定して完了です。

初回なので、パッケージの更新とアップグレードも行っておくとよいでしょう。(上記ドキュメント内にコマンドがあります)

Docker Desktop

公式サイトからDLしてインストールします。Windowsの再起動が必要です。

バージョンはCPUの種類によってインストールしてくるものが変わります。

CPUがどこのものかをシステム情報で確認しましょう

筆者の環境では初回起動で上手くWSL2とつながらないエラーが出ていました。一旦Docker DesktopのDashboardの歯車マーク→Resources→WSL integrationに進み、「Enable integration with my WSL distro」にチェックを入れ、Ubuntuを選んでSaveしておきましょう。

この状態

DevContainerはAntigravityの標準装備

DevContainerはコードを書く人々の環境を揃える簡単な方法としても重宝します。それだけでなく、コーディング系のAIエージェントを使う時でも、AIの動ける範囲をdockerコンテナ内に閉じ込めておくことで、安全に開発を進められる利点があります。
VSCodeだと拡張機能の導入が必要ですが、Antigravityでは標準でDev Containerが使えます。 使い方は後述します。

ゲーム開発の準備をする

ゲームを早く作りたい!Codexを触らせてくれ!気持ちはよく分かります。しかしはやる気持ちを抑えて、とにかくファイルを散らかさないように最初から整理しておくことをお勧めします。
ここでやることは1つです。

  • WSL2に作業用ディレクトリ=Dev Containerを作っておく

これでAIコーディングエージェントが万が一暴走して何かを消したり、破壊の限りを尽くしても平気でいられます。

WSL2で作業用ディレクトリを作っておく

ユーザーのディレクトリに戻る

cd

今いる場所を確認

pwd

作業用ディレクトリを作成

mkdir works

作業用ディレクトリに入る

cd works/

DevContainerの定義

Ubuntuのターミナルで、DevContainerの設定ファイルである、 .devcontainer/devcontainer.json を作成します。
WSLに接続したまま、Antigravityのチャット(Gemini 3.1 Pro(High)使用)にこう投げかけます。

worksディレクトリ内に`.devcontainer`ディレクトリを作り、その中に`devcontainer.json`を作成してください。最新版のLTSバージョンのNodeが動くことを完了条件とします。

するとGeminiがよしなにこういう必要最低限の設定ファイルを書いてくれます。

{
  "name": "Node.js",
  "image": "mcr.microsoft.com/devcontainers/javascript-node:24"
}

AntigravityからWSL2のDev Containersに入る

Antivgravityを起動し、左下の>と<が重なっているようなアイコンのボタンを押します。「Dev Containers: Open Folder in Container...」を選択し、下記パスを入力します。

\\wsl.localhost\Ubuntu\home\あなたのユーザー名\works

logが「Container Started…」まで到達したら、一度左下のボタンから接続を閉じて、再度スタート画面に戻り、「Dev Container」と書いてあるWorkspacesを開きましょう。

Godot Engineのインストール

worksディレクトリ(DevContainer)内にgodotというディレクトリを作り、下記からDLしてきたzipファイルを配置しました。

Dev Container内のターミナルから、下記コマンドで解凍します。
(Godotのバージョンは適宜読み換えてください)

unzip -d godot/ godot/Godot_v4.6.1-stable_linux.x86_64.zip

Godot Engineのプロジェクトを作る

まずDev Containerであるworksの中に、reposディレクトリを作ります。ゲームはこのrepos/ の中に、更にプロジェクトを作って管理します。
Dev Containerが机、reposが本棚、ゲームプロジェクトが本だと想像すると分かりやすいかもしれません。

mkdir repos

reposの中に入りましょう。

cd repos/

最後にreposディレクトリ内にゲームプロジェクトのディレクトリを作ります。

mkdir my-first-game/

Codex CLIを使う

Codex CLIのインストール

nodeに入っているパッケージマネージャ: npmを使ってcodexを入れます。

npm i -g @openai/codex

起動(OpenAIアカウントでの認証が入ります)

codex

ゲームプロジェクトをCodex CLIにまず調べさせる

下記ガイドに基づき、まずゲームプロジェクトの調査をCodex CLIに依頼します。

このリポジトリの構成を要約して、重要なディレクトリと開発フローを教えてください。まだ編集はせず、調査だけしてください。

Codexの使い方ガイド: 始め方、5つのTips、Best Practicesまで – Kanaries

Codex CLIと対話しながらゲーム開発環境を整えてもらう

最低限、下記を整えてもらいましょう。

  • Godotでゲームを作る時のディレクトリ構成

  • Godotが標準で見に行くユーザーデータ格納先(XDG_DATA_HOME / XDG_CONFIG_HOME / XDG_CACHE_HOME)をプロジェクト内のディレクトリに変更させる。これらは.gitignoreに追記させる

  • 必要最低限のシーンとgdスクリプトの用意

  • ゲームをWEBブラウザ向けにビルドしてエクスポートする

  • ゲームのエクスポート、WEBでのデバッグに必要なコマンドのショートカットスクリプトを作ってもらう(コマンドで用意してくれます)

  • README.mdの用意(取扱説明書)

Godot Engineはゲームのエクスポートのために、Export Templatesというものが必要になります。下記ページの下の方にリンクがあります。忘れずにDLしておきましょう。

Export templatesはtpzという拡張子になっています。どうしたら解凍できるんだ?とパニックになりかけましたが、慌てずにその混乱をそのままCodex CLIに投げかけましょう。

Export Templatesをgodot/配下に置きましたが、拡張子がtpzでどうしたらいいか分かりません。

筆者の混乱したプロンプト

.tpz は headless でも使えますが、そのままではなく中から必要なテンプレート zip を展開して、Godot が見る export_templates/<version>/ に置く必要があります。今回は godot/Godot_v4.6.1-stable_export_templates.tpz の中身を確認し、必要な web_nothreads_debug.zip と web_nothreads_release.zip が含まれているのを確認したうえで、すでにプロジェクト側へ展開しておきました。

Codex CLIの回答

有能な執事のようです。

WEBへのゲームのエクスポートが済んだら、最後にブラウザで表示してみましょう。

そっけない画面ですが GodotへのHello world 完了!

ここまでのエディタの様子はこの通りです。Codex CLIをインストールしてからここまで2時間です。

Dev Containerなので何も見せてやましいものはないスクショ

お疲れさまでした!

おわりに —— 思ったよりがっつり技術記事になってしまった

新規に購入したPCで一からの環境構築だったため、これは好都合!とWSL2のインストールから書いたら大変な分量になってしまいました。しかし、AIと安全に開発を進めるには、この部分は他の技術記事に丸投げしてはいけないと思い、全部書きました。ZennやQiitaでやれというのはごもっともです。

次回予告

次回!AI×創作RTAは~?
このゲーム作品の肝である対戦型パズルゲームのプロトタイプを作っていきます。お楽しみに!

このnoteは、手描きも出来てAI大好きな術師が、イラスト、漫画、動画などのメイキングを淡々と置いていく場所です。下にあるハートマークをポチッと押していただけますと励みになります!


いいなと思ったら応援しよう!