Fortnite at E3 2018 side front 1
写真: Sergey Galyonkin from Raleigh, USA / CC BY-SA 2.0 / Wikimedia Commons

Epic Gamesは、Unreal Engine 6(UE6)やFortniteの開発にAIツールを使い、コードや機能を作っていると明らかにしました。エンジニアがコードの大部分を書くのではなく、AIの出力を導いて設計上の目標を実現する進め方です。同社の開発責任者は、AIへの懐疑論より導入が遅れるリスクを重く見ていると述べています。

EpicがAIに任せるコード開発

Epicの開発担当副社長マーカス・ワスマー氏は、エンジニアがAIツールを使い、望む設計結果に向けて反復的に開発していると説明しました。エンジンを一度の指示で完成させるのではなく、メモリー使用量、性能、拡張性の条件を保ちながら、開発者が求める機能を届ける方針です。

同社はClaude CodeとCodexを利用しており、活用範囲はバックエンド、エンジン、ゲーム開発に及びます。ワスマー氏によると、現在の開発の多くはFortnite、Unreal Editor for Fortnite(UEFN)、UE6に関係する開発環境で進んでいます。

Epicは、UE6の開発方針として、コード生成やAIによる分析を社内の開発チームで広く使い始めたと説明しています。用途には、コードベースの索引作成、クラッシュ原因の分析、テスト生成、バックエンド開発の並行化も含まれます。

UE6で目指す統合と開発環境

UE6は、現行のUnreal Engine 5(UE5)とUEFNを統合する製品として計画されています。Epicは今後2年間で2つの開発系列をまとめる方針を示しました。

新しいゲームプレイの枠組み「Scene Graph」は、Epicのプログラミング言語Verseを基盤に構築されます。Verseは、永続的で大規模なゲーム世界や、多数の参加者が関わる開発を支えることを目指す言語です。

開発者向けには、ClaudeやGeminiなどと連携するMCP(外部ツールとエンジンを接続する仕組み)を用意し、好みのモデルを選べる開発環境を構想しています。Epicは、レベル設定やキャラクターのリグ、ライティングなどの手作業を減らし、制作上の判断や反復に時間を割けるようにしたいとしています。

AI支援の生産性を調べた研究

Googleの研究者らは、同社のソフトウェア技術者96人を対象に、AI機能を使うグループと使わないグループを比較しました。複雑な企業向け開発課題にかかった時間を調べた結果、要因を調整した推定では、AIを使った参加者は約21%短い時間で課題を終えました。

この実験では、コード補完、貼り付け支援、自然言語からコードを作る機能を使いました。研究者らは推定の信頼区間が広いことにも触れ、社内ツールを使った特定時期の結果が、異なるツールや開発環境でも同じように得られるとは限らないとしています。

Microsoft Researchなどの研究者による3つの実地実験では、Microsoft、Accenture、匿名の大手企業に所属する計4,867人を分析しました。AIコード補完ツールを利用できた開発者は、完了したタスク数が26.08%増えました。経験の浅い開発者ほど利用率と生産性向上が高い傾向も報告されています。これらの研究は開発作業の時間やタスク数を測定したもので、Epicの開発環境における効果を示すものではありません。

シェーダー変更と更新用パッチ

ワスマー氏は、Epicでの最近の成果として、長年取り組んできた非決定的なクック処理の不具合をほぼ解消したことや、シェーダー圧縮関連の作業を加速し、パッチ容量を大きく減らしたことを挙げました。シェーダーは、ゲーム画面の描画に使うプログラムです。

Unreal Engineでは、プロジェクト設定で不要なシェーダーの組み合わせ(パーミュテーション)を減らすと、コンパイル時間やパッケージ容量、読み込み時間に影響します。設定によってはパーミュテーションを最大50%削減できますが、使う描画機能に応じて無効化できる項目は異なり、設定変更後はシェーダーの再コンパイルが必要です。

ゲームの更新で新しいマテリアルを追加する場合、対応するシェーダーのバイトコードも更新パッケージに含める必要があります。Unreal Engineのシェーダーパッチ機能は、旧版と新版のメタデータを比較し、差分をパッチにまとめます。更新用のシェーダーライブラリーは、パッケージへの収録や実行中の読み込み処理が必要になる場合があります。

Epicが挙げた開発上の成果

ワスマー氏は、Direct3D 12(D3D12)の描画レイヤーの大部分を書き換えた作業について、1人のエンジニアなら3〜6週間と見積もったところ、実際には約1週間で完了し、CPU時間の改善とバグの減少も得られたと述べました。

Epicは、AIを使った開発を一部に限る方法は現実的でないと考え、社内で得た知見を他の開発者と共有しながら、利用可能なツールでUE6を開発する方針です。UE6では、AIを制作とエンジニアリングの両方に取り入れ、開発の反復を支援する仕組みを計画しています。

Epicが挙げた作業期間や品質面の成果は、同社の開発チームにおける事例です。外部の研究ではAI支援による生産性の変化が調べられていますが、Epicが利用するツールや大規模エンジン開発で同じ結果になるかは、各研究の対象と条件を踏まえて評価する必要があります。