Godot Web Loading Test

Hello there,

I’m very interested in seeing what engines have to offer when exporting to the web. I’m mostly developing with Unity, therefore I’m maintaining a database of live builds for that (GitHub | Live builds).
Since I love open source, I also wanted to create a comparable repo / database for Godot as well, for which I now have a first draft that I’m comfortable to share (GitHub | Live builds).

What I’m trying to achieve here:

  • Simple “game” in 3D that uses physics as a base for comparison
  • Implement this game in different engines to make the engines more comparable in terms of web export
  • Maintain different branches of different versions of the engine to be able to compare changes within the engine builds
  • Have CI in place to make the process of creating new builds as easy and fast as possible
  • Bonus: Add a nice set of development / debug tools to make development for the web easier

What I’ve done so far:

  • Rebuild the “game” in Godot with the most of additional development feature set
  • Build a CI pipeline that builds the game, runs wasm-opt and brotli compresses the build before uploading it to my server
  • Overview page of all builds created, so everyone can test the results for themselves (e.g. on different devices).

What I would like to add:

  • After reading through How to Minify Godot's Build Size (93MB --> 6.4MB exe) I would like to explore how hard it is to get custom export templates integrated in my CI pipeline (but I fear that will be a bigger task).
  • If Godot 4.3+ supports exporting to anything else than WebGL2 I would like to add that as well (e.g. WebGL1, WebGPU), since that I always found interesting to compare with Unity builds.
  • Some sort of file hashing, so that the wasm, pck, js file names change with every build (similar to Unity’s option “Name Files as Hashes”). This helps in not having to care about cached old data when overwriting build folders.

Yeah, and that’s pretty much it. Since I didn’t do any big projects with Godot yet I’m all ears on your thoughts / critique / suggestions to make this better. Everything interesting I found so far I added to the notes on GitHub.

Looking forward to your input!

4 Likes