• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

Sid Meier's Civilization VI Gets a DirectX 12 Renderer in Latest Update

btarunr

Editor & Senior Moderator
Staff member
Joined
Oct 9, 2007
Messages
47,880 (7.38/day)
Location
Dublin, Ireland
System Name RBMK-1000
Processor AMD Ryzen 7 5700G
Motherboard Gigabyte B550 AORUS Elite V2
Cooling DeepCool Gammax L240 V2
Memory 2x 16GB DDR4-3200
Video Card(s) Galax RTX 4070 Ti EX
Storage Samsung 990 1TB
Display(s) BenQ 1440p 60 Hz 27-inch
Case Corsair Carbide 100R
Audio Device(s) ASUS SupremeFX S1220A
Power Supply Cooler Master MWE Gold 650W
Mouse ASUS ROG Strix Impact
Keyboard Gamdias Hermes E2
Software Windows 11 Pro
Firaxis Games released the biggest update to Sid Meier's "Civilization VI." The update is particularly big for the PC version, as it adds a DirectX 12 renderer, letting the game take advantage of performance-enhancing features introduced with the API, such as multi-threaded rendering, which could improve frame-rates in CPU-limited low-resolution setups. The in-game benchmark tool is also updated. The update also adds new content, user-interface updates, and gameplay changes.



View at TechPowerUp Main Site
 
"letting the game take advantage of performance-enhancing features introduced with the API, such as multi-threaded rendering, which could improve frame-rates"

That's very debatable thing considering many developers release DX12 support that actually makes performance SIGNIFICANTLY worse. Which goes against any and all logic beind DX12...
 
"letting the game take advantage of performance-enhancing features introduced with the API, such as multi-threaded rendering, which could improve frame-rates"

That's very debatable thing considering many developers release DX12 support that actually makes performance SIGNIFICANTLY worse. Which goes against any and all logic beind DX12...
Not if you realise everything so far is just DX11 titles with DX12 bolted on top.
When you'll see a DX12-only title, or a title that launches with DX12 and receiving DX11 in a later patch, then you can be sure you're looking at what DX12 can do.
 
Just use Vulkan instead. Is way faster and better.
 
Not if you realise everything so far is just DX11 titles with DX12 bolted on top.
When you'll see a DX12-only title, or a title that launches with DX12 and receiving DX11 in a later patch, then you can be sure you're looking at what DX12 can do.
Are there any native DX12 titles out there aside from Ashes? I wasn't paying that much attention regarding the engines to be honest. Maybe something in the latest iteration of UE4...
 
Are there any native DX12 titles out there aside from Ashes? I wasn't paying that much attention regarding the engines to be honest. Maybe something in the latest iteration of UE4...
No, there aren't, that's the whole point. I'm not even sure about Ashes, but I haven't been paying close attention...

And that's not even unexpected, technology is not adopted overnight.
 
DX12 is clearly going to take a while. DX11 was awful when it first came out, but look at it now. It's inevitable native DX12 titles will be seen eventually, and we'll see the full potential of the API realised, but that's probably a solid year away yet I reckon.
 
Not if you realise everything so far is just DX11 titles with DX12 bolted on top.
When you'll see a DX12-only title, or a title that launches with DX12 and receiving DX11 in a later patch, then you can be sure you're looking at what DX12 can do.
DX:MD just pushed out the stable patch for DX12 support with multi-gpu nvidia setups and it is a big boost in performance. To the point where I've been able to turn on volumetric lighting, parallax mapping, cloth physics, etc, etc, etc and still not have framerates drop below 50 in the benchmark test.

That was literally impossible for my setup to do before.
 
Are there any native DX12 titles out there aside from Ashes? I wasn't paying that much attention regarding the engines to be honest. Maybe something in the latest iteration of UE4...
Forza Apex and newest Gear of Wars games are DX12 only me thinks. Point is that depending to the game engine DX12 could bring performance up or not. Warhammer TW DX12 is better than DX11 for every GPU in the last 3 years. The game's genre and gameplay helps a lot though. But for low to mid end PCs with any recent GPU it gives much more, especially to those with cheaper CPUs.
 
Just use Vulkan instead. Is way faster and better.
Except microsoft, perhaps everyone will prefer vulkan. But aside from the fact that it can be used on other versions of windows, linux etc, does it have any other advantage? Like, is your 2nd sentence really factual?
 
Except microsoft, perhaps everyone will prefer vulkan. But aside from the fact that it can be used on other versions of windows, linux etc, does it have any other advantage? Like, is your 2nd sentence really factual?
In my experience, in these situation the decision comes down to tooling. Microsoft will offer tools for DX12 on Windows, Khronos will offer squat. Thus Windows titles will keep sticking to DX while everything else will have to build the tools to use Vulkan.
 
Except microsoft, perhaps everyone will prefer vulkan. But aside from the fact that it can be used on other versions of windows, linux etc, does it have any other advantage? Like, is your 2nd sentence really factual?
Simple answer: ALL the games that are using Vulkan are way faster than D3D11. ALL the games that are also using D3D12 are buggier and generally slower than in D3D11.
 
I did both GFX and AI benchmarks on DX11 and 12. DX12 was worse but only by a very small margin. Less than 3% difference on GFX and less then 1% on AI.

What I did notice was the huge improvement to load times of the benchmarks where DX12 was FAR superior.
 
Simple answer: ALL the games that are using Vulkan are way faster than D3D11. ALL the games that are also using D3D12 are buggier and generally slower than in D3D11.
Which "all games" would this be?
Only game I'm aware of that supports both D3D11 and Vulkan is Talos Principle, in which D3D11 is a lot faster (or at least was when the benches were done originally)
There's also many games where at least AMD benefits notably from D3D12 over 11, even if there now is titles which do better with D3D11 instead, too.
 
Which "all games" would this be?
Only game I'm aware of that supports both D3D11 and Vulkan is Talos Principle, in which D3D11 is a lot faster (or at least was when the benches were done originally)
There's also many games where at least AMD benefits notably from D3D12 over 11, even if there now is titles which do better with D3D11 instead, too.
There's DOTA2, but that's just one game.
Also, I don't believe there's any title right now that's faster under DX12 than in DX11 (I'm hoping that's because DX12 is bolted on, not because DX12 requires more attention than developers are willing to pay).
 
"letting the game take advantage of performance-enhancing features introduced with the API, such as multi-threaded rendering, which could improve frame-rates (in CPU-limited low-resolution setups)"

That's very debatable thing considering many developers release DX12 support that actually makes performance SIGNIFICANTLY worse. Which goes against any and all logic beind DX12...
(I extended your quote)
So they are making the game scalable downwards, well that's interesting…

"All" Direct3D and Vulkan games so far sucks for a simple reason, they are utilizing the new "low level" APIs through a wrapper making them behave like the old APIs, which defeats the whole purpose of a low level API in the first place. There will only be minor occasional gains due to driver side optimizations, but generally speaking it will be comparable or worse compared to the "old" APIs.

Not if you realise everything so far is just DX11 titles with DX12 bolted on top.
When you'll see a DX12-only title, or a title that launches with DX12 and receiving DX11 in a later patch, then you can be sure you're looking at what DX12 can do.
Exactly. It will be a while before we see any title written for Direct3D 12 or Vulkan.

Just use Vulkan instead. Is way faster and better.
Please explain why.

Are there any native DX12 titles out there aside from Ashes? I wasn't paying that much attention regarding the engines to be honest. Maybe something in the latest iteration of UE4...
AofS is a ported Mantle title, so it's most certainly not a non-biased well written Direct3D 12 title.

Which "all games" would this be?
Only game I'm aware of that supports both D3D11 and Vulkan is Talos Principle, in which D3D11 is a lot faster (or at least was when the benches were done originally)
There's also many games where at least AMD benefits notably from D3D12 over 11, even if there now is titles which do better with D3D11 instead, too.
The Talos Principle is built using a "Direct3D 11-like" wrapper, so it will make all APIs behave like the old ones…

There's DOTA2, but that's just one game.
Also, I don't believe there's any title right now that's faster under DX12 than in DX11 (I'm hoping that's because DX12 is bolted on, not because DX12 requires more attention than developers are willing to pay).
Just like The Talos Principle, Dota 2 uses a similar wrapper. So we'll have to wait for Valve to build a game engine build around Vulkan natively, which will not happen anytime soon.

For this reason, Dota 2 does not seem to scale very well either.
 
Meanwhile, back on the Civ VI DX12 topic ...
It sucks that they changed the benchmarking system. Is any work underway to retest for image and performance differences between the two APIs?
 
Which "all games" would this be?
Only game I'm aware of that supports both D3D11 and Vulkan is Talos Principle, in which D3D11 is a lot faster (or at least was when the benches were done originally)
There's also many games where at least AMD benefits notably from D3D12 over 11, even if there now is titles which do better with D3D11 instead, too.
Doom? Ashes? Talos? DOTA 2? :)
 
Doom? Ashes? Talos? DOTA 2? :)
Doom supports OpenGL and Vulkan, not D3D11 or any other D3D
Ashes doesn't have Vulkan (yet)
Talos has Vulkan and D3D11, but D3D11 is faster in it (or at least was when it was benched)
DOTA2 does indeed support both, didn't remember it supporting D3D11 - there doesn't seem to be many benches, but the one YouTube video comparing the renderers I did find showed similar performance between D3D11 and Vulkan, not better on Vulkan

There's DOTA2, but that's just one game.
Also, I don't believe there's any title right now that's faster under DX12 than in DX11 (I'm hoping that's because DX12 is bolted on, not because DX12 requires more attention than developers are willing to pay).
I suggest you re-check your benchmarks, not 100% sure for NVIDIA, but Tomb Raider was the first title that didn't run faster with D3D12 than D3D11 on AMD
 
Doom supports OpenGL and Vulkan, not D3D11 or any other D3D
Ashes doesn't have Vulkan (yet)
Talos has Vulkan and D3D11, but D3D11 is faster in it (or at least was when it was benched)
DOTA2 does indeed support both, didn't remember it supporting D3D11 - there doesn't seem to be many benches, but the one YouTube video comparing the renderers I did find showed similar performance between D3D11 and Vulkan, not better on Vulkan


I suggest you re-check your benchmarks, not 100% sure for NVIDIA, but Tomb Raider was the first title that didn't run faster with D3D12 than D3D11 on AMD
BF1: http://www.guru3d.com/articles-pages/battlefield-1-pc-graphics-benchmark-review,6.html
DX:MD: http://www.hardocp.com/article/2016...ivided_dx12_performance_review/4#.WDAkLROMQwE

Nvidia seems to take a bigger hit across the board from DX12, but they all take a hit, nonetheless. The Furies don't, but they only gain a few fps regardless.
 
DOTA2 does indeed support both, didn't remember it supporting D3D11 - there doesn't seem to be many benches, but the one YouTube video comparing the renderers I did find showed similar performance between D3D11 and Vulkan, not better on Vulkan
I've found DOTA 2 to run a lot more smoothly in Linux with Vulkan than OpenGL. It seems to me that a lot of people don't understand exactly why Vulkan and DX12 can be faster.

First of all, there is very little about Vulkan and DX12 that will just make an 3D application faster, it provides you tools to help accelerate performance. Back in the days of DX11 and OpenGL, most of what the API was doing was reliant on global state and individual draw calls. This means that everything is intended to work together and be indivisible which is great from a stability and predictability standpoint but, is terrible from a throughput perspective. There are some thing in Vulkan that make it a little different such as removing a lot of error checking and reducing overhead to interact with the API but, there is one fundimental contstruct that they added that can yield the best performance: Command buffers. The nice thing about command buffers is that they're like a queue for things like drawing. Now, there are still some limitations to how many commands can be issued at any given time but, a big benefit is that multiple threads could be preparing command buffers to be executed. This helps decouple the preparation of APIs for things like drawing, texturing, and lighting from the actual act of making them happen.

If there are Vulkan or DX12 ports that merely wrap DX11/OpenGL and literally execute a command buffer for every draw call, then yeah, performance is going to suck because the developers didn't know what the hell they were doing because using Vulkan the same was as OpenGL/DX11 defeats the purpose of using Vulkan/DX12 in the first place. If you're going to be so lazy just to wrap the new API, then you should just keep using DX11 or OpenGL.

Khronos was very clear that Vulkan was not intended to replace OpenGL or OpenGL ES. Vulkan is a harder to use alternative that provides lower level access and greater ability to improve performance. It is not a drop-in replacement for existing 3D APIs.

tl;dr: Vulkan and DX12 are not intended to be drop-in replacements for DX11 and OpenGL and people (as well as devs,) need to stop treating them as such.
 
Back
Top