はじめに
UE5にはBlueprintでもC++でもない第3の選択肢が存在しました。
Hazelight(Split Fictionの開発元)が公開している UnrealEngine-Angelscript です。
公式GitHub - Hazelight/UnrealEngine-Angelscript(Epicに招待されてないと見れないかも)
公式ドキュメント - Unreal Engine Angelscript
調査経緯
UE5のアップデートもいよいよ終わりが見えてきましたね。
UE6ではVerseへの移行に伴い、ブループリントは将来的に廃止されるみたいです。
最近の私はAI駆動開発ばかりで、めっきりゲームエンジンを触っていませんでした。
ブループリントやアンリアルエンジンのビルドの仕様も相まって、イテレーション速度が悪いためです。
そんな中、コードベースのAngelScriptが存在することを知りました。これだ!?と。
ってことで、調べたことだけ先に書きます。
実践の中身は、3か月後ぐらいに自分で作ったゲームと一緒にお見せする予定です。
採用ゲームが強い
まずは、信頼性のために公式の採用リストから有名どころを4本。
全部Steamで超有名なオンラインマルチプレイヤーゲームです。
・It Takes Two / Split Fiction(Hazelight)… オンライン協力プレイ
・THE FINALS / ARC Raiders(Embark Studios)… 大規模対戦プレイ
他にもThe Talos Principle 2、Titan Quest II、Gothic 1 Remakeなど計11タイトルが公式リストに載っています。
どんなコードか
ほぼUE C++の見た目です。C++書いたことあれば初見で読めます。
これにビビっときました個人的に。
class AExampleActor : AActor
{
UPROPERTY()
float CountdownDuration = 5.0;
UFUNCTION(BlueprintOverride)
void BeginPlay()
{
Print("Hello from AngelScript!");
}
}
C++との違いは、
・ヘッダファイルなし。1ファイルで完結
・ポインタなし。UObjectは自動でGC管理される参照になって . でアクセス
・UPROPERTY() / UFUNCTION() はそのまま使える(デフォルトでEditAnywhere / BlueprintCallable)
・BlueprintOverride でBeginPlayやTickを直接書ける
・Blueprint連携はそのまま生きてるので、デザイナー協業を壊さない
というのが利点ですね。
イテレーションが速い
個人的に一番刺さったところです。
これ本当にデカい。アンリアルC++のネックは本当にこの部分だった。
・保存した瞬間にエディタへ反映。C++のコンパイル待ちがない
・PIEでプレイ中ですら、構造が変わらない変更なら反映される
・保存のたびにユニットテストを自動実行する仕組みまで内蔵
・VSCode拡張あり(補完・定義ジャンプ・保存時の即時エラー表示)
海外の開発者も「開発体験とイテレーション速度がUnityレベルになる」と評してました。
参考↓
Hacker Newsのコメント
本題:AI開発と相性が良いのでは?という話
ここからは仮説を交えお話します。
AIコーディングでUE5開発をやろうとすると、
・Blueprintはバイナリのノードグラフなので、AIが直接読み書きできない
また、読めても余計な引数などがデフォルトで大量についているので、インプットコンテキストを圧縮する。
・C++はAIが書けるけど、コンパイルが遅く試行錯誤のループが遅い。
またスクリプトでビルドを早くしても、エディターの起動に時間がかかる。(これ、変数を新規定義した際に本当にイラついた経験ある方多いのではないでしょうか。
)
・MCPはあるけど、画面操作が超絶遅いしトークン消費も桁違い。
私がキャラクターのリターゲットをやってもらった時は、一応操作はできるし、出来栄えも問題ないが時間がかなりかかりました。なので、個人開発で寝てる間に何かさせるぐらいでしか使い道が無い。
上記の問題点を、AngelScriptは
・テキストなのでAIがそのまま読める・書ける・diffが見れる
・保存で即反映なので、AIの修正→確認のループが速い
・C++ライクな型付き言語なので、AIにとって未知の文法でもない
の3つが同時に揃います。
リファクタ効率はBlueprintの比じゃなくなる可能性があると見てます。
今まで利点を話してきましたが、
AngelScript×AIエージェントの実践報告は探した限り海外にも見当たりませんでした。
なので、実務で使う際にはまだ研究が必要そうです。
ライセンス
UEをフォークして作られているため、基本的にはUE本体のライセンス(EULA)がそのまま適用されます。
それに加えて、AngelScript言語本体はzlib、プラグイン部分はMITが別途適用されます。
どちらも商用利用OKの緩いライセンスですが、リリース時の表記義務まわりはLICENSE.mdを要確認です。
ライセンスについて(AngelScript公式ドキュメント License ページ)
なお、UEのEULAには「エンジンコードを、入力データで学習する生成AIの学習入力・プロンプト入力に使うこと」を禁止する条項があります。
対象はあくまでエンジンコードで、自分で書いたゲームコードは対象外です。
どのサービスでも「入力を学習に使わない」設定・プランになっているかは確認しておきましょう。
Unreal Engine エンドユーザーライセンス契約
導入の注意
プラグイン形式ではなく、エンジンのフォークをソースからビルドする方式です。
プリビルドのバイナリプラグインとは非互換なので、運用中のプロジェクトへの途中導入は難しいです。
またエンジンビルドなので、展開するとめっちゃGB食うし重いです。気を付けてください。
最後に
今回は調査だけで終わりましたが、明日から実際に使用する予定です。
自分が作ったマルチプレイヤーゲームは基本ブループリントで書いていたのですが、
コードがスパゲッティ化して一人で混乱していました。
作成したゲーム↓
AIに解読させようにも、ブループリントはテキスト化するとコンテキストを大きく圧迫するため全体を把握させられず、バグ取りに相当な時間がかかりました。
AngelScriptならこの問題を解決できるのではないかと期待しています。
実際に使ってみて、3か月後ぐらいに続報をお知らせします。
UE6が来ればこれも過去のものになる可能性は高いですが、UE6アーリーアクセスは早くて2027年末予定。
それまでの数年をAI駆動開発で走る現実解としては十分だと考えています。
参考にしたもの
協力型アドベンチャー「スプリット・フィクション」、UE5でSFとファンタジーが融合した世界を実現(Epic公式インタビュー)
記事で紹介したUE5 + AngelScriptで開発されたゲーム達
私はThe Finalsが好きです。ぜひ遊んでみてください。




