約 2.5 ヶ月、ひたすら AI とのバイブコーディングによって、TypeScript(TS)から C++ に変換してもらった。
.ts が 429 ファイル。
潜在的なバグがあろうが、とにかく TS 版に忠実に。
コメントや変数や関数の定義順も TS 版に準拠。
HTML固有のところだけ解釈を入れて UE に置き換える作戦。
実験として、メソッドの命名規則を camel 方式から Pascal 方式に変更したけど、半分くらい過ぎた辺りで後悔した。
ここもまずは TS 準拠にすべきであった。
Opus や Sonnet もたまに間違えて混乱するようだった。
とはいえ、このおかげで、.md によるエージェント定義はだいぶ慣れることができた。
使った AI は、
前半は、Antigravity の Opus。
後半は、Copilot の Sonnet。
たまに、Claude 自身の Opus/Sonnet。
ユーザーが激増してサーバーが耐えられなくなったのか、Gemini4がコーディングにはイマイチでやる気が失せたのか、Antigravity はトークン上限が激渋になりエラーも頻発するようになり廃止。
Copilot はさすが MS といったところか、その辺りは余裕はあったものの、Opus はやはり重いため Sonnet を使ったが、精度的に十分であった。
途中、Antigravity の Gemini4 や Codex の GPT5.4 も試すものの、定数値を変えるわ処理を端折るわで使いものにならなった。
が、後になってみると、GPT5.4 は指示の仕方が悪かったのかもしれない。
前半はこちらで手動ビルドしてエラーを報告していたが、後半はビルドバッチを与えて AI にビルドエラーの修正をやってもらっていた。
これでだいぶ楽になったが、トークンの消費は激しい。
文字化けしないように UTF8 でログ保存する(これをやらないと ShiftJIS の文字化けがソースに混入する)、MSBuild の verborsity オプションでメッセージ量を調整するなどの工夫が必要だった。
また、あとで大変なことにならないように、たまに手動で .uproject を立ち上げて少なくとも Unreal Editor が起動し、プレイできるように常に維持した。
そして、UE のアセットに画像類を追加したりした結果、4 月末にはなんとかタイトル画面が出て、オープニングイベントを実行し、ホーム画面が出るようになった。



ただ、出てないボタンがあったり、レイアウトが崩れていたり、文字色やサイズが変だったりとまだまだ問題は多い。
今は、やはり WebGL の描画関数呼び出しを都度 UE の Slate に置き換えているところがカオス化しやすいようなので、CanvasRenderContext2D のラッパークラスを作り、一貫して TS 版を忠実に変換させるようにしているところ。
改善は後でやればよい。
ここにきて、GPT5.5 が Codex からリリースされ、試したところ、5.4 の頃の違和感はなくなった。
導入さえしっかり導いてあければ、Sonnet よりも思慮深い感じもある。
ということで、今は Codex GTP5.5 をメインにしている。
この2ヶ月半で AI に課金した金額へおおよそ2万円。
期間と人月料金で考えても激安だ。
未だに Claude は万単価の Max にアップグレードしておらず、そろそろ本格的に Claude と思っていたが、Codex の万単価である Pro 版にしようとしている。
(Copilot は試用期間さんざん使ったのでいざ課金しようと思ったら新規を閉じてしまった。)
人がやれば確実に半年はかかり、お金としてもウン百万円にはなるであろう作業を数万円で済ませようとしているのだから、末恐ろしい世界になったものである。
ここからは、TS→C++ は終えて、いよいよ UE 対応となる。
また、まだ 『Nyaz』 でしか動かしてないが、『NIZ』 はどうなのか?
そして、three.js の領域は…?
また進展がありましたら、ここでレポートする。







