@SovietSpaghetti UE4 supports dx12 quite fully now so it'd be possible. That said it really doesn't make much difference outside a few very specific use cases. I wouldn't expect a noticeable difference in a game like insurgency. It's kinda like the dx10 of this generation imo haha. Not that useful to most of us, but laying the ground work for the next version.
@Nekrosmas Multi-threading in games is interesting, because games often require processing to happen in a fixed and predictable order so systems don't break. A really oversimplified example of this is if you were to simulate firing of weapons on a thread separately to the thread where you update the hitbox positions based on animation, at any given instant the code could be testing a bullet hit against outdated or future collision data depending on which thread was running faster or had less work to do. Realistically this probably wouldn't be a big issue but just using it as an example to describe how multi-threading isn't always practical in game development.
It's super good for stuff that doesn't need to be accurate like big crunching of numbers (a good place to use it might be spawning loot in a pubg style game because it's ok if that happens in the background while people play the game).
Another great example of where it's practical is Rainbow six siege. That game has a really cool system where when you plant c4 it calculates the destruction on separate thread in the background so it's ready to all explode when the timer counts down etc and doesn't hold up the main game thread.
So yeah multi-threading is great, but it's not a matter of just separating the existing 4 threads out onto however many a pc has but instead taking advantage of extra threads when it's possible (which is rarely every tick of a game)