Tbh, 35 MBytes for a game client binary isn't much to brag about, WASM or not.
For game engines the underlying problem is usually that the engine is designed around the idea that "everything is a virtual interface" (e.g. 'jump tables') which can't be dead-code eliminated and all engine features are always included, even when not used by a specific game.