Comment by inigyou
5 hours ago
Well it did used to run on early Raspis. Maybe you don't realise how much less efficient it's gotten? It used to run fine in 256MB with small render distance.
So how did they break that?
* run both server and client when in singleplayer - doubles memory use
* turn byte block IDs into object pointers - octuples memory use for blocks
* make all game content into JSON object trees with huge amounts of indirection - adds about a GB of objects deserialized at startup that used to be simple if/then ladders
* add a whole bunch of code to handle these object trees, don't know how much this adds but probably 100MB of code when you include the raw class files through to the JIT-optimized assembly.
Are you referring to Minecraft Pi Edition that came with Raspberry Pi OS back in the day? The one made in C++ instead of the original Java edition?
> run both server and client when in singleplayer - doubles memory use
When did this change? It's been like that for as long as I can remember. It's actually a very common thing for games to do because it requires less code. Also it doesn't actually double memory use - game content can be shared, textures/meshes/audio is only on the client, etc. The chunk and entity data would need to be duplicated but they should be smaller.
1.3, not beta 1.3. Chunk data was traditionally the biggest part of Minecraft's memory use until they added a bunch more garbage.
Interesting they switched after a couple years!
> Chunk data was traditionally the biggest part of Minecraft's memory use until they added a bunch more garbage.
But that's only really because it is extremely light on assets that are typically large in other games.
I'm a bit indifferent about this. Obviously they made a lot of decisions that aren't good for performance but it's a tradeoff. Notch was most productive working in Java so he could pump out updates quicker, and it helped with modding even though builds were obfuscated. NBT helped maintain backwards compatibility of worlds and probably helped with modding too. If they had done things differently then Minecraft may not have been the huge success that it is.