I’m having somewhat of a similar issue to [this post], but unfortunately the only answer to it was a hacky workaround.
I’ve packaged my game in both development and shipping configurations for Win64 with the following package settings enabled:
- Include debug files
- Use pak file
- Include prerequisites
- Include crash reporter
- Cook only maps (cook all is disabled, so i don’t think this does anything)
The maps I’m cooking include our main menu and our levels which total about 1GB in size total.
When running the packaged Development build (after a fresh restart), the main menu loads almost instantly and the process sits around 330MB.
When running the packaged Shipping build, the main menu takes around a minute to load and just shows a black screen during this time. Once the main menu finally appears the process is sitting around 3GB of memory usage.
When running memreport in the main menu in the development build, all the loaded objects are the ones necessary for the main menu (from what I can tell) and only totals around 24MB.
[Memreport of the main menu in packaged development configuration.]
An important thing to note is that the main menu map uses it’s own game mode, player controller and player pawn classes (the rest are the default ones). The game mode used for the other levels though has references to some objects that have quite a number of references, so even just right clicking the game mode blueprint in the editor causes the memory usage to shoot up by nearly 2GB. It’s obvious that this isn’t being loaded in the development build or the memory usage would be much greater than 330MB, but I’m wondering if it is in the shipping configuration for some reason.
I am going through our existing stuff to try and cleanup unneeded references and I’m looking into loading some of the stuff asynchronously, but the main concern is a lot of stuff is being loaded when it shouldn’t be in shipping builds and I don’t know what it is or why.
- Do shipping builds load assets differently from development builds?
- If shipping builds do load assets differently, how can I find out what it’s loading.
I’ve been struggling with this issue for a while now so any help would be greatly appreciated.