Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
Games with 300MB of data save slowly.
There is more to saving than just copy pasting raw RAM.
It's that saving the states of all the individual machines, belts, etc. takes time, and if they don't freeze the game then for example:
* Save state of machine A, it contains nothing.
* Belt B contains 1x item C, and feeds it into machine A. Belt B now contains nothing.
* Save state of Belt B, it contains nothing.
Item C has vanished
Objects are moving through the factory constantly. If they don't freeze the game while they save objects will get duplicated or deleted.
Bonus points for avoiding any "two copies of everything in memory" solution.
To put it another way , the bigger your individual game is , the bigger and longer the save.
In games, you have to be very disciplined about causal chains. Actually, this is a reason to be very careful with threading.
Lets say you are running at 120 frames a second. That gives you about eight milliseconds to render the world.
Anyway, normally, in a conservative setup, world streaming would get it's own thread and it would also be streaming state to something like Redis (an in memory key/value store), with another thread streaming that to disk or cloud.
Then you would have a thread for the user interface, and a thread for the display engine.
I have not implemented a Physics Engine, but I imagine there would be a temptation give it at least one thread.
Summary:
One thread is not really a viable modern competitive strategy unless I am missing something.
The Unreal Engine saves you a ton of work, unless you spend too much time modifying it.
Also, UE5 has big improvements in world streaming.