Unreal Engine... How did they do it?
Members - Reputation: 287
Posted 24 October 2012 - 06:46 PM
The game application does most of the game stuff, but asset loading & use is separated out to the second application.
The second application does the asset loading, rendering, audio and other things that use large amounts of memory.
Game loads up, runs as it would, calls it's APIs to load in textures/audio/etc. Some of those loads are routed to the second application to load that data.
The game renders, sending a render command buffer to the second application which does the rendering.
This deals with a vast amount of the game data that has to be loaded from disk and keeps it in memory.
The next step is to hold the game data that is needed for game logic in the second application's memory. And then the next step after that is to give the second application a representation of the game's state so that when the game is reloaded it returns to the point in game play it was at when it was terminated.
Members - Reputation: 514
Posted 25 October 2012 - 10:06 AM
My quick and easy way to achieve something similar is for development purposes, split the game into two applications and have those two applications communicate over a local network connection.
That's a pretty good way to do things, especially if you're going to have an multi-player since you likely need the infrastructure anyway. I know a few game developers who've used this technique, and it's worked for them quite well.