Very interesting. I was thinking about doing this, but went the Defold route instead. Defold is much smaller out of the box than even these results, but the sacrifices in functionality are pretty severe and the editor and engine are, shall I say, cantankerous. I may have to circle back to trying this at some point for my web games. Thanks for the post!
Godot
Welcome to the programming.dev Godot community!
This is a place where you can discuss about anything relating to the Godot game engine. Feel free to ask questions, post tutorials, show off your godot game, etc.
Make sure to follow the Godot CoC while chatting
We have a matrix room that can be used for chatting with other members of the community here
Links
Other Communities
- !inat@programming.dev
- !play_my_game@programming.dev
- !destroy_my_game@programming.dev
- !voxel_dev@programming.dev
- !roguelikedev@programming.dev
- !game_design@programming.dev
- !gamedev@programming.dev
Rules
- Posts need to be in english
- Posts with explicit content must be tagged with nsfw
- We do not condone harassment inside the community as well as trolling or equivalent behaviour
- Do not post illegal materials or post things encouraging actions such as pirating games
We have a four strike system in this community where you get warned the first time you break a rule, then given a week ban, then given a year ban, then a permanent ban. Certain actions may bypass this and go straight to permanent ban if severe enough and done with malicious intent
Wormhole
Credits
- The icon is a modified version of the official godot engine logo (changing the colors to a gradient and black background)
- The banner is from Godot Design
Some sacrifices were made... But the end result is a Godot project that works exactly the same, albeit with slightly worse performance.
The write up has lots of hard numbers for the executable size but only describes the performance impact in general terms.
It would be good to see some before and after performance numbers.
Performance testing is a whole can of worms. It's hard to get an idea of how performance changes because it'll depend a lot on the nodes and scripts being used. There could be huge regressions in specific cases and functions and no difference in others. Usually you'll need a suite of tests to see what changed.
But, why?
100mb are already negligible. I want a reasonable size (less 20GB) and ok performance.
Wasting time on metrics that don't matter is waste. I get and agree with mobile/web constraints. I did not consider them.
@Gladaed @popcar2 because every bloated 100gb game is a mix of a thousand different assets/executables/libraries where the developer thought "why optimize, 100MB is nothing".
Often with little more than symbol stripping, removing unneeded files, and basic lz compression you can cut most game sizes in half, reduce load times, and free up terabytes of space on your system.
The article begins by talking about web exports. The default there is 42MB, which is kind of a lot for the web
Edit: Of course, compressed it is ~9, which isn't so bad, I suppose.
For mobile this is a legit difference imo
Also what raptor said.