6
lxmcf
6y

I've said this once before and I'll say it again, if you create a game engine, development kit or the like that is single threaded with no easy ability to allow multi threaded work loads, grab a cactus and firmly shove it down your urethra :-3

(It's mostly a rant with GameMaker but fuck sake, we have CPU's with more than 1 core... Let us use them!)

Comments
  • 1
    Isn’t this all game engines? I figured they just had one update() method and you do everything from there. I don’t even think Unity supports multithreading
  • 0
    @growling pretty sure it does actually, can't say for sure but almost every engine supports multithreading now, wasn't the case not long ago but now that consoles started shipping with 8 cores it was necessary.

    (Don't quote me on that, I'm probably wrong)
  • 0
    @irene like GameMaker for example, dumps everything on one thread because fuck knows why...

    You can do it through modifying machine generated C++ code everytime you want to build or test though -,-
  • 3
    Safe multithreading is pretty difficult and requires a lot of engineering time, safe and efficient multithreading even more so. Commercial game engines are also way more difficult than hobby projects because they have to pass things like soak tests (in which you leave the game running for a few days to see if can control things like memory fragmentation). Considering the costs a lot of game engines just shovel everything onto a single thread and use multithreading only for obvious stuff like audio, and it works because modern processors are fast (even famous games like StarCraft 2 were mostly single threaded, if I remember right).

    GameMaker games are fairly light, they don't have to do heavy stuff like complex 3D skeletal animation calculations or traversing huge scene graphs. In that case I think it makes a fair amount of sense to not invest into making a multithreaded engine.
Add Comment