I don’t want to know how many rushed games so stuff like this
Comment on What are some of the best optimizations you applied to your code?
Mikina@programming.dev 1 year ago
I was working on a pretty well known game, porting it to consoles.
On PS4 we started getting OOM crashes after you’ve played a few levels, because PS4 doesn’t have that much memory. I was mostly new on the project and didn’t know it very well, so I started profiling.
It turned out that all the levels are saved in a pretty descriptive JSON files. And all of them are in Unity’s Scriptable Objects, so even if you are not playing that level, they all get loaded into memory, since once something references a SO, it gets loaded immediately. It was 1.7Gb of JSON strings loaded into memory once the game started, that stays there for the whole gameplay.
I wrote a build script that compresses the JSON strings using gzip, and then uncompresses it when loading the actual level.
It reduced the memory of all the levels to 46Mb down from 1.7Gb, while also reduced the game load by around 5 seconds.
Sigmatics@lemmy.ca 1 year ago
craigers@lemmy.world 1 year ago
See now we want to know what game it was…