I'd like to turn old game engines (such as Doom engine/id Tech 1) that were designed to run on a single core computer into multi-core game engines.
How can I do that?
I'd like to turn old game engines (such as Doom engine/id Tech 1) that were designed to run on a single core computer into multi-core game engines.
How can I do that?
You cannot just edit the binary or configuration files of some already-compiled game written under single-threaded assumptions to turn it into a game that effectively utilizes more than one thread. Unless the code has some existing multithreaded features that were just shipped disabled, making this kind of change requires access to the source code. The switch to a multi-threaded computation model from a single-threaded computation model is non-trivial, which is part of why it continues to be so difficult.
If you have access to the source code of the game in question, making this transition is done exactly the same way as you would in building a game to leverage multi-threading in the first place. It will probably be harder because you will first need to learn the existing code base and work around a lot of fundamental design challenges stemming from the fact that the original code probably did not bother to consider concurrency.
The basic process will involve identifying portions of the code that can be rewritten to execute in parallel, and then performing that refactoring. The specifics of the tasks will vary based on the specifics of the code and problems you're dealing with; entire books can be written on the general topic of effective design under concurrency scenarios.