DirectX 12 Effect on the Game Development Industry

Started by
45 comments, last by _the_phantom_ 10 years ago

None. We are all moving to SteamOS. biggrin.png


Ignoring the fact that 'all' isn't remotely true this is an interesting thing to consider; right now SteamOS looks attractive because 'not ms' and 'fractionally faster' than Windows BUT with the release of D3D12 this is unlikely to be the case any more - even with the current release as demoed at //Build the D3D12 version was a few ms of CPU time faster than D3D11, a gap which is only likely to get bigger.

The only OpenGL vs D3D benchmarks was GL vs D3D9 aka not a reflection on reality of games going forward (or even now), and even then the real advantage wasn't that great so what happens in a world where D3D12 based games are suddenly able to push more and faster than OpenGL? As I've mentioned before OpenGL is hell-bent it seems on 'one thread to do all the work!' as a solution via instancing which isn't scalable going forward (single threads not getting faster and all that) so what you've got in OpenGL now is pretty much, well, it.

Some of this depends on how D3D12 gets released; MS are apparently aware of the desire to see it on Win7 so if, and it's a big if, it makes it back that far and not just Win8 or Win9 this could prove to be an interesting point, more so if it ends up being usable on the Xbox One and thus becomes a more viable API to use on two systems.

After all who wants to game on a system which requires more resources to look and play worse?
Advertisement
This statement looks flawed to me.

"Its not Microsoft, nor Apple, nor nVidia, nor Intel, etc. Its the ARB's fault!"

Then tell me who is part of the ARB/Khronos Group? Apple, nVidia, Intel, AMD, Imagination Technologies and a big etc (Microsoft isn't part of Khronos, I'll give you that) I haven't seen them actively opposing OpenGL's direction at all (AFAIK all hardware vendors just try to justify ARB/Khronos decisions again and again).

If you're going to blame the ARB, then you are blaming all its members. The ARB isn't just some extraterrestrial thing, its composed by the entities you said they're devoid of responsibility concerning the state of OpenGL.

The ARB is also comprised of other industry representatives. Plus they're a committee. And we all know how good committees are at getting stuff done.

None. We are all moving to SteamOS. biggrin.png

Steam OS exists because Gabe Newell got his knickers in a twist over the Windows App store and app restrictions on Windows RT. Gabe certainly isn't your friend - he's in the business of making money so don't think he's suddenly become all cuddly and open-source-friendly. He just didn't like what smelled to him like a competitor to Steam, that's all. This isn't about suddenly embracing the philosophies of Linux, this is about trying to shut down competition. In other words - he's using you and you love it.

Direct3D has need of instancing, but we do not. We have plenty of glVertexAttrib calls.

Depends.

If it's available on Windows 7 - happy days.

If it has feature levels allowing it to run on downlevel hardware - happy days.

If Microsoft hit those two sweet spots with it, allowing it to be usable by most people on day 1, then it will be successful. Remember: this is what they did with DirectX11 (it ran on Vista and had feature levels) so there is precedent. Hopefully they're aware that if they want this to be successful they'll have to modify some of their current attitudes.

If Microsoft UNO worldwide bans cap-bits - happy days with Arthur Herbert Fonzarelli as special guest.
What would probably happen:
- Windows 7: no way!
- Windows 8.0: no way!
- Windows 8.1: no way!
- Windows 8.1 update 1: no way!
- Windows 8.1 update 2 (the one with the cool new start menu announced): yes, but with limited driver capabilities, no WDDM 2.0, feature_level 11.x
- Windows 9 support: yes, new WDDM 2.0, small set of new hardware feature ("programmable" blending, conservative rasterization), new cap-bits!
- Xbox: yes, probably very similar to Windows 8.1 up2 support (do people seriously think that the AMD apu has some "unlocked cool performance and hardware features" like feature_level_12_0? xD)
-Feature levels: 11.0, 11.1, cap-bits for d3d11.2, 12.0 and other cap-bits for multi-threading and related features...

With the "Approaching Zero Driver Overhead" talk I thought they'd make an announcement along the lines of "And now all these extensions will be supported in Intel, nVidia and AMD!" but it didn't happened lol

Well, this could be identified as a typical independent hardware vendors' "Bazinga!".

None. We are all moving to SteamOS. biggrin.png

Is Sheldon Lee Cooper in that universe able to drive a car?

None. We are all moving to SteamOS. biggrin.png

Steam OS exists because Gabe Newell got his knickers in a twist over the Windows App store and app restrictions on Windows RT. Gabe certainly isn't your friend - he's in the business of making money so don't think he's suddenly become all cuddly and open-source-friendly. He just didn't like what smelled to him like a competitor to Steam, that's all. This isn't about suddenly embracing the philosophies of Linux, this is about trying to shut down competition. In other words - he's using you and you love it.

Poor GabeN, would you make him starve? angry.png Anyway they have like the 90% (probably more) of the PC video-games digital distribution, Steam OS wasn't required... and I cannot play no more any multi-player source based games without tons of stuttering caused by that bloatware called Source Engine (it began when they added the "community" layer with achievements etc., dramatically degenerated with the lovely workshop....), and the audio layer is a total disaster compared to some old game I was usually play when I was a child..

"Recursion is the first step towards madness." - "Skegg?ld, Skálm?ld, Skildir ro Klofnir!"
Direct3D 12 quick reference: https://github.com/alessiot89/D3D12QuickRef/

Steam OS exists because Gabe Newell got his knickers in a twist over the Windows App store and app restrictions on Windows RT. Gabe certainly isn't your friend - he's in the business of making money so don't think he's suddenly become all cuddly and open-source-friendly. He just didn't like what smelled to him like a competitor to Steam, that's all. This isn't about suddenly embracing the philosophies of Linux, this is about trying to shut down competition. In other words - he's using you and you love it.

Exactly. SteamOS was a response to a competitor. Why didn't Valve build SteamOS when GFWL was proposed and rolled out? Why did Valve make BILLIONS off gamers who used Windows XP, Vista, 7, only to then come out with their own system?

They took Linux, which they didn't create.

To sell a box, which they don't sell themselves.

To sell games, which they don't publish themselves.

...........Just so they can take the same 70/30 split every other digital store takes. Yeah, Gabe is a great human being. If only all CEOs had his mentality, the world would be so much better. Profit off the hard work everyone else does.

....Wait.......That IS EXACTLY what all other CEOs do. But hey, at least Gabe takes his billions and puts it back into his own products..............right? Right? Nope. Not at all.


hey, at least Gabe takes his billions and puts it back into his own products..............right?

Hey, knock it off. He needs the money for daily lobster deliveries to his private jet. Would you deny him that?!

The ARB is also comprised of other industry representatives. Plus they're a committee. And we all know how good committees are at getting stuff done.

I know. That's where my second comment was aimed at:

I haven't seen them actively opposing OpenGL's direction at all (AFAIK all hardware vendors just try to justify ARB/Khronos decisions again and again).

Even if the ARB isn't wholly comprised of hardware vendors, I haven't seen any "general consensus" of vendors that are against ARBs decisions, au contraire, they seem to support their every move.

This isn't CAD/whatever devs vs hardware vendors like you more or less paint it, with the CAD devs being the majority and making the crappy decisions, instead they're pretty much on the same side. Hell, every single nVidia presentation on OpenGL has its 10 min dedicated to saying "Fixed Function Pipeline FTW! We will never deprecate anything!". I'm starting to think its as mandatory as Oracle's devs legal notices in their slides...


The only OpenGL vs D3D benchmarks was GL vs D3D9 aka not a reflection on reality of games going forward
The few numbers the Cass Everitt/John McDonald presentations had, were with DX11 as reference. They had one or two DX11 paths, then a bunch of OpenGL paths.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

The only OpenGL vs D3D benchmarks was GL vs D3D9 aka not a reflection on reality of games going forward

The few numbers the Cass Everitt/John McDonald presentations had, were with DX11 as reference. They had one or two DX11 paths, then a bunch of OpenGL paths.


I was specifically referring to the Valve OpenGL vs D3D9 presentation a while back when a lot of people got excited about OpenGL being faster by a couple of fps - probably should have called that out however so My Bad.

However to circle around to your point there was nothing surprising in the talk with regards to the D3D vs OpenGL numbers either; in fact if any graphics programmer WAS surprised by these numbers such that, for example, that map-discard was slower than persistent mapping, they should probably reconsider their knowledge base significantly.

And that's the best you can do now (on NV hardware, see previous comments about AMD and Intel) but, more importantly, this is as good as it gets. That's it. There is no more 'magic' which can be done. What you can submit on one thread is basically fixed going forward.

Which brings me to my D3D12/Mantle point; they have or are going to gain (at least) persistent mapping so suddenly that becomes just as fast. That leaves multi-draw indirect and it's ilk and I'd be surprised if that wasn't exposed to, but even if it isn't I doubt this is going to be a problem.

OpenGL is still late validating state, which is fine and great and if you remove interactions it gets you a long way, but it's still a cost every frame.
Mantle and D3D12's model allows for fixed state creation and validation cost ONCE for, if not all, then many many things, and also allows you to split the workload over threads.

So in a 4 core system, assuming reasonable scaling and a 'worst case' situation of D3D12/Mantle submission of scenes taking the same amount of time as OpenGL (which, given the presentation data I doubt but anyway...), a D3D12/Mantle app could summit draw calls somewhere in the region of 3.9x faster than an OpenGL app. Throw in more cores and that gaps widens.

Now, maybe they don't do any MORE work, so the scene complexity and GPU load is largely the same, but it does mean that the game can get back to doing other processing that much faster.

Even if core counts aren't increasing D3D12/Mantle should allow for somewhere in the region of a 3.9 to 11.n increase in scene submission rate depending on "various factors".

So while those AZDO numbers might look nice that's it.
Enjoy 'em.
You'll not get any more.

(And even then NV only, and outside of "certain hardware set" you'll need falls backs as things like DrawID don't work and maybe never will for certain hardware - which is why I'd like MultiDrawIndirect but, if the hardware can't do useful things with it, I won't be too upset with multi-thread command buffer building and just normal DrawIndirect calls.)

A couple questions...

Given that the drumbeat to kill 32-bit OS is louder each day, is this an issue with D12? Is there any possibility that Microsoft with DX 12 finally pulls the life-support system on 32-bit (I am exaggerating, fecicious.)

Is DDR-5 and the coming DDR after that (7?) having any weight at all in DX12 development decisions?

Personal life and your private thoughts always effect your career. Research is the intellectual backbone of game development and the first order. Version Control is crucial for full management of applications and software. The better the workflow pipeline, then the greater the potential output for a quality game. Completing projects is the last but finest order.

by Clinton, 3Ddreamer

A couple questions...

Given that the drumbeat to kill 32-bit OS is louder each day, is this an issue with D12? Is there any possibility that Microsoft with DX 12 finally pulls the life-support system on 32-bit (I am exaggerating, fecicious.)

Is DDR-5 and the coming DDR after that (7?) having any weight at all in DX12 development decisions?

Unlikely if the mobile and tablet world is still largely 32-bit. MS have invested heavily in these markets and don't seem too likely to throw away that investment just yet.

Direct3D has need of instancing, but we do not. We have plenty of glVertexAttrib calls.

Yeah 12 is designed to span dx9.3 level to dx11.2 level HW, as well as desktops, tablets, phones - x86/arm/etc...

This topic is closed to new replies.

Advertisement