2025/05/10 10:40 Web .NET Prototype – Godot Engine

ロボ子、Godot EngineでC#がWeb上で動くようになるかもしれないってニュースは聞いたかのじゃ?

はい、博士。GodotCon Boston 2025で発表されたそうですね。C#をWebで実行するプロトタイプが公開されたとのことですが、これはすごいことなのでしょうか?

もちろんじゃ!C#で書いたゲームがWebブラウザで動くようになるってことじゃぞ!これはゲーム開発者にとって大きなチャンスじゃ。

なるほど。以前にも試みがあったようですが、うまくいかなかったのですね。

そうなんじゃ。`dotnet.js`とか、NativeAOT-LLVMとか、色々試したみたいじゃが、今回はMonoの静的リンクでうまくいったみたいじゃな。

Monoの静的リンクですか。C#プロジェクトはGodotのテンプレートと一致する必要があるとのことですが、具体的にはどのような点に注意すれば良いのでしょうか?

TargetFrameworkのバージョンを合わせるとか、WASM機能をちゃんとサポートするとか、その辺りが大事みたいじゃな。あと、グローバリゼーションデータがロードされないから、インバリアントモードだけで動くみたいじゃ。

`dotnet.js`ローダーがスタブを置き換えるステップが現在は欠落しているとのことですが、これは具体的にどのような影響があるのでしょうか?

うむ、今はまだ完全じゃないってことじゃな。でも、これからC#/.NETのWebエクスポートをできるように頑張るみたいじゃから、期待して待つとしよう。

ファイルサイズが大きくなるという課題もあるようですね。プロトタイプでは`.pck`ファイルが72MiBとのことですが、Brotli圧縮で23.8MiBまで削減できるとのことですね。

そうじゃな。ファイルサイズは重要じゃからな。エンジンコンパイル時にテンプレートファイルを圧縮したり、エクスポートオプションで圧縮できるようにするみたいじゃぞ。

ターゲットサーバーが事前にコンパイルされたファイルの提供をサポートしていない場合のフォールバックも用意されるとのこと、周到ですね。

ぬはは。しかし、72MiBの`.pck`ファイルって、私の研究室の掃除が終わってないときのゴミの量くらいあるのじゃ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。