So running perfectly at near continuous 60FPS or better on an ancient I7 920 is not good enough? Just because the frame rate is not over 9,000 does not mean the engine is bad…
Metal is kind of required on Mac because Apple refuses to natively support anything else that is vaguely modern. Their OpenGL version is ancient and their native Vulkan support non-existent. Compliments to Valve for encouraging an implementation of Vulkan for Mac which wraps Metal into a limited subset of Vulkan.
Due to this game being a RTS rather than a FPS. In first person shooter games the actual game state is not that complicated, and especially when playing single player there is no concern that state reproduction is fully deterministic. To put it in perspective a computer from 2000 could run doom extremely well due to how simple it is, and the remake (which I hope you are referring to) is pretty much the same with graphics turned up and more complicated hit boxes.
Practically no game does. This is why the newest consumer level I9 from intel is so good at gaming because it offers 5GHz. The oct core part is not that important, but the 5GHz boost part is since that gives the single threaded performance one needs for games to perform since ultimately that will be the limit. This is why Intel has remained so good at gaming over AMD despite AMD having a lower price per core than Intel for a while as Intel has generally better single thread performance.
There is actually cause to believe that the game only really uses 1 core now. However that might be because of the move to D3D11 has made the graphic thread so much more performant that it is consuming trivial time compared with the main state updating thread.
Making the state updating thread multi threaded in an RTS game with the work loads of SC2/HotS is extremely hard. RTS games that took advantage of multithreading for state update did so for physics and other scaleable tasks such as Supreme Commander and even those had their limit (I doubt Supreme Commander 1 and 2 scale well beyond quad cores).
The game already uses and is optimized for D3D11. I am not sure there will be many performance gains by moving to D3D12 as there were when they moved to D3D11 from 9. D3D12 and Vulkan offer performance for certain types of graphic operation which before were impossible due to how poorly they would perform.
For example one used to try to limit the number of draw calls one made as those had huge overhead, but with D3D12 and Vulkan they are trivial. However a game designed for D3D9/11 will not be making many draw calls for this reason, hence even though draw calls in D3D12 are faster there will be little performance gains since so few are still being made. On the other hand a new game designed for D3D12 from the ground up might take advantage of making lots of cheap draw calls with how it does graphics, but this would effectively limit the game to only running with D3D12/Vulkan since D3D11 or OpenGL would perform too badly running it due to the number of draw calls. This is why many existing games with dual D3D11/12 support have relatively little gains when running in D3D12 over D3D11.
WoW is extremely old so that is understandable. Porting such a complex game would be at the level of writing it new. This is a similar reason why getting 144FPS on Warcraft III will be difficult on some custom maps.
That said I am pretty sure a modern I9 processor with 5GHz boost would hit 144Hz very reliably in HotS. My ancient I7 920 gets mostly above 60FPS and that has less cache, slower memory, only slightly above half the boost clock speed and on average runs fewer instructions per clock cycle
Due to their caching model used since moving to 64bit I would not recommend anything under 8GB of memory to avoid paging stutter on Windows 10. I upgraded from 6GB to 18GB and all such stutter vanished. That said modern gaming computers will have anywhere from 16GB to 32GB so this is not a problem.
Except as mentioned above by having to support D3D11 you will not see much performance gains from using D3D12 since you will be avoiding doing anything that performs too badly in D3D11 which is where the main performance gains from using D3D12 are.
It does in the form of single threaded performance. The higher clock speeds and more instructions per second of modern processors will vastly increase performance over say my old I7 920, which already is around sufficient for 60FPS.
Yes but better is like a 5-7% more FPS at best due to having to support D3D11. Simply moving to a processor with better single thread performance will give a larger increase, eg moving from AMD to a similar tier Intel.
Yes it has been. I even think it supports D3D12 now. Not like you will see large performance gains for the reasons mentioned above. The game was designed around and still required to support older APIs and as such does not do the sort of previously demanding operation that D3D12 and Vulkan provide great speed boosts for. It will not be making an excessive number of draw calls, even if it now can with D3D12 because it must still support D3D11.
I am a fully qualified hardware/software engineer. I might have old hardware but I am far from stupid when it comes to what a computer can and cannot do.
Actually it is usually the opposite. Because their games are always a step behind technology trends even effectively an old toaster runs them well with high FPS. My ~10 year old I7 920 as good as flawlessly runs HotS. My only complaint is that it runs it drawing 4-8 times the power a more modern processor would, like the above mentioned recently announced I9 and its partner I7.
More modern development software does not necessarily make the games run faster. For example MSVC2008 could probably produce a fully capable game that uses Vulkan despite being 10 years old. Sure it will not be as optimized as MSVC2017, but the difference is likely only 1-2% at best for a game anyway since most optimizations used today also existed 10 years ago.
I am pretty sure SC2/HotS is taking good advantage of modern hardware. For example its use of programable shaders still efficiently uses modern GPUs, allowing them to reach utilization around their TDP limit. Sure it does not use tessellation, ray tracing or AI but it still heavily uses the rest of the GPU. Even if it did use those other components, all that would be gained is improved visual fidelity since it would still be limited by what it is currently using. This is very different from Warcraft III which barely loads modern GPUs due to its use of the ancient pre programable shader fixed function graphics pipeline.
That engine is not suitable for RTS games like HotS due to it being built with different requirements in mind. It is highly optimized for FPS play with limited other interaction.