• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

id Software dev: Developers adopting DX12 over Vulkan literally makes no sense

jett

D-Member
This was posted over in the recent Vulkan thread, thought it was interesting enough for its own thread. Axel Gneiting, engineer programmar at id, posted a few nuggets on twitter.

GamingBolt summarized and collected the relevant tweets.

Speaking on Twitter, Gneiting said that developers using DirectX 12 over Vulkan ‘literally makes no sense.’ Elaborating on his stance, and in response to some questions, Gneiting pointed out that with Windows 7 forming a major chunk of the PC gaming market, and with DirectX 12 being incompatible with Windows 7, using DirectX in an attempt to have ‘one codebase’ makes no sense, since developers would need to create two separate ones anyway. He pointed out that the argument that programming for Xbox One and Windows 10 becomes easier by using DirectX 12 is moot too, because DirectX 12 on Windows and on Xbox is very different, necessitating two separate code paths anyway.

He also made some observations about how a lot of the perceived benefits of DirectX 12 are not exclusive to it, noting that both Vulkan and DirectX give similar performance benefits anyway.

Shots fired?

In related news, Doom got a Vulkan patch on PC today and framerates have seemingly improved across the board.
 

JaseC

gave away the keys to the kingdom.
He pointed out that the argument that programming for Xbox One and Windows 10 becomes easier by using DirectX 12 is moot too, because DirectX 12 on Windows and on Xbox is very different, necessitating two separate code paths anyway.

This seems to mostly if not entirely negate the notion that UWP is advantageous if you're a game developer targeting both Windows PC and the X1.
 
Windows 10 is the most used OS on Steam now (45%) and the percentage of that user base seems to be climbing pretty quickly (it was 34% just 5 months ago). While it makes sense to develop for Vulkan to support Windows 7 users, a lot of developers may just not care too much about the Windows 7 gaming user base since it's rapidly shrinking.
 

Honome

Member
No surprise at all, seems that since Microsoft plan to have 99% of the world computers with Windows 10 until the end of the year will not succeed, most of the developers will follow the same path. It just makes no sense to exclude all Windows 7 users, unless you have a very lucrative deal with Microsoft to only release your game on Windows Store.
 

Figments

Member
Gneiting pointed out that with Windows 7 forming a major chunk of the PC gaming market

But will that be true years into the future?

The June 2016 Steam Hardware Survey shows that Windows 10 is gaining steady growth--already passing every other operating system using the service--while Windows 7 is seeing steady decline. Obviously, this is likely due in large part to the free upgrade window closing at the end of the month, but it's still interesting to note, though.

Also obviously, this doesn't reflect the /entire/ PC gaming market, but it does show the trend of a very large segment of that market.

This seems to mostly if not entirely negate the notion that UWP is advantageous if you're a game developer targeting both Windows PC and the X1.

Aye. Though I wonder if, with UWP, the development pipelines will become even more streamlined and effective in the future.
 

gypsygib

Member
I'm all for giving MS less control. When they were dominating (in the US) with 360, they were horrible.

It's almost hard to believe that a major tech company actually implemented a paywall to access Internet Explorer and Netflix.

Literally, they were the only company in the world cheap enough to require a paid subscription to use a free web browser and a service already paid for.

MS having domination in anything gaming related terrifies me.
 

Krejlooc

Banned
Recently? Id have made good API decisions for a long time now.

I'm speaking of general behavior. The way they handled their break up with John Carmack and their lawsuit has been gross, although that is more attributed to the top brass.

I stand by saying they're on point recently, because not-so-recently they (zenimax) have been assholes.
 

Honome

Member
Windows 10 is the most used OS on Steam now (45%) and the percentage of that user base seems to be climbing pretty quickly (it was 34% just 5 months ago). While it makes sense to develop for Vulkan to support Windows 7 users, a lot of developers may just not care too much about the Windows 7 gaming user base since it's rapidly shrinking.

What reasons a developer would have to develop a game for 45% of the PC user base in stead of making a game for all the 100%?
 

amdb00mer

Member
I get his point about Windows 7, but how many of those Windows 7 gamers took the free move to Windows 10? Yes I know some people were forced to upgrade, but a lot switched for free.
 

Prismo

Neo Member
I'm all for giving MS less control. When they were dominating (in the US) with 360, they were horrible.

It's almost hard to believe that a major tech company actually implemented a paywall to access Internet Explorer and Netflix.

Literally, they were the only company in the world cheap enough to require a paid subscription to use a free web browser and a service already paid for.

MS having domination in anything gaming related terrifies me.

That money was obviously being used to maintain all those peer to peer connections...
 

jett

D-Member
I'm all for giving MS less control. When they were dominating (in the US) with 360, they were horrible.

It's almost hard to believe that a major tech company actually implemented a paywall to access Internet Explorer and Netflix.

Literally, they were the only company in the world cheap enough to require a paid subscription to use a free web browser and a service already paid for.

MS having domination in anything gaming related terrifies me.

The success of XBL is really unfortunate. At least that's something that will probably never affect the PC arena.
 
Windows 10 is the most used OS on Steam now (45%) and the percentage of that user base seems to be climbing pretty quickly (it was 34% just 5 months ago). While it makes sense to develop for Vulkan to support Windows 7 users, a lot of developers may just not care too much about the Windows 7 gaming user base since it's rapidly shrinking.

They care enough to continue supporting a DX11 renderer. I can't imagine a game coming out anytime soon that is DX12 only that isn't coming directly from MS. They have a choice to adopt a new graphics API that runs on a single version of Windows or adopt a similar API that is supported on multiple platforms. Both require a lot of new and similar work.
 

wazoo

Member
No surprise at all, seems that since Microsoft plan to have 99% of the world computers with Windows 10 until the end of the year will not succeed, most of the developers will follow the same path. It just makes no sense to exclude all Windows 7 users, unless you have a very lucrative deal with Microsoft to only release your game on Windows Store.

There are differences between UWP, winstore, and DX12.
 

4Tran

Member
Windows 10 is the most used OS on Steam now (45%) and the percentage of that user base seems to be climbing pretty quickly (it was 34% just 5 months ago). While it makes sense to develop for Vulkan to support Windows 7 users, a lot of developers may just not care too much about the Windows 7 gaming user base since it's rapidly shrinking.
Shrinking is not the same as nonexistent. If you have a choice between developing a game that can reach 60% or 100% of your audience, the latter is obviously more attractive. It's just a question of whether Microsoft is influential enough to muscle their way into the market. I hope that Vulkan wins out though.
 

Elandyll

Banned
He pointed out that the argument that programming for Xbox One and Windows 10 becomes easier by using DirectX 12 is moot too, because DirectX 12 on Windows and on Xbox is very different, necessitating two separate code paths anyway.
That sounds crazy...
I thought the whole point of going Win10/ UAP was to provide 1 platform?
 

Kayant

Member
But will that be true years into the future?

The June 2016 Steam Hardware Survey shows that Windows 10 is gaining steady growth--already passing every other operating system using the service--while Windows 7 is seeing steady decline. Obviously, this is likely due in large part to the free upgrade window closing at the end of the month, but it's still interesting to note, though.

Also obviously, this doesn't reflect the /entire/ PC gaming market, but it does show the trend of a very large segment of that market.

Windows 10 is the most used OS on Steam now (45%) and the percentage of that user base seems to be climbing pretty quickly (it was 34% just 5 months ago). While it makes sense to develop for Vulkan to support Windows 7 users, a lot of developers may just not care too much about the Windows 7 gaming user base since it's rapidly shrinking.

Problem with these is no one knows publicly how accurate this is because we don't know the sample size and the survey is optional.
 
That sounds crazy...
I thought the whole point of going Win10/ UAP was to provide 1 platform?

Yeah you have that esram to manage on Xbox one. My guess is dx12 on scorpio will be more like PC code.

Time will tell which API will win, Vulcan had a big chance given its on Android.
 

Kysen

Member
In related news, Doom got a Vulkan patch on PC today and framerates have seemingly improved across the board.

Damn this already ran amazingly well. Also that line about X1 and DX12 being different is new. For years now we've heard that porting between both was very little work.
 

inm8num2

Member
If MS doesn't continue to push 7/8.1 users to upgrade after the 29th (I think they have something up their sleeve but we'll see), then the rate of users upgrading to 10 will drop or even plateau. Would be nice to see Vulkan support in more games, both for users sticking with 7/8.1 and especially for Linux users.
 

Figments

Member
Windows 10 is the most used OS on Steam now (45%) and the percentage of that user base seems to be climbing pretty quickly (it was 34% just 5 months ago). While it makes sense to develop for Vulkan to support Windows 7 users, a lot of developers may just not care too much about the Windows 7 gaming user base since it's rapidly shrinking.

Except it makes literally no sense to exclude Windows 7 users at this time because the OS still takes up the second place position in the PC gaming market.

The "will this be true well into the future" part of my previous post is definitely important here. In the short term, right now, and for the next few years, it makes absolute zero sense to not support as many things as you can, from a business perspective, from a development perspective, from a userbase perspective.

In the long term? It's anyone's guess.

That money was obviously being used to maintain all those peer to peer connections...

The success of XBL is really unfortunate. At least that's something that will probably never affect the PC arena.

Considering the paywall for multiplayer was a thing that existed with Xbox Live since its inception during a time when the vast majority of people didn't even bother with setting up online multiplayer on PC, let alone consoles, paying for a service which allowed this, plus coupled it with ease of use and quick connectivity with friends, made the platform a very decent proposition for the mass market.

Problem with these is no one knows publicly how accurate this is because we don't know the sample size and the survey is optional.

Very true, and an important caveat in this discussion, I'll admit.
 

Shin-Ra

Junior Member
Just as DirectX is threatened by an open-source API, Microsoft conveniently becomes interested in PC gaming again!
 
Yeah you have that esram to manage on Xbox one. My guess is dx12 on scorpio will be more like PC code.

Time will tell which API will win, Vulcan had a big chance given its on Android.

So are they going to try and emulate ESRAM or will it have to be there just so you can play current Xbox One games? I find it doubtful developers are going to go back and update their games to make them Scorpio compatible.
 
What a flawed argumentation. Windows 7 is *very* quickly becoming irrelevant, and there is very good support (tools, documentation,...) for DX from Microsoft, something which wasn't really a strength of the Khronos Group in the past. Choosing DX12 is simply the sensible choice here.

The times were id software was in any way industry leading are also long over. They are just a small company compared to Electronic Arts, Ubisoft, ... and the guys working there aren't idiots. There is a reason why they choose DX12. Devs are interested in good tech, not in deluded conspiracy theories, where DX is allegedly "hurting" developers and consumers.

Maybe their games would be slighty more complex than "walking into a room and killing everything x 100 times", if they didn't spend so much time on OpenGL/Vulkan.
 

LordRaptor

Member
This seems to mostly if not entirely negate the notion that UWP is advantageous if you're a game developer targeting both Windows PC and the X1.

I don't think anyone who actually plays games on the PC ever believed that to be true in the first place.
 
That sounds crazy...
I thought the whole point of going Win10/ UAP was to provide 1 platform?

sgDZGD7.jpg

I saw this earlier but other devs started saying the code is shared. He never responded to that so who knows.
 
So are they going to try and emulate ESRAM or will it have to be there just so you can play current Xbox One games? I find it doubtful developers are going to go back and update their games to make them Scorpio compatible.

Given its Microsoft they will probably capture esram calls and route them to normal memory. They got a pretty good Xbox 360 emulation going on a x64 archecture. Esram emulation probably looks like childs play.


I saw this earlier but other devs started saying the code is shared. He never responded to that so who knows.

Could also just be API wars. Which group of programmers doesnt have a weekly os, ide or text editor war going.
 

Stanng243

Member
Gemüsepizza;209691499 said:
What a flawed argumentation. Windows 7 is *very* quickly becoming irrelevant, and there is very good support (tools, documentation,...) for DX from Microsoft, something which wasn't really a strength of the Khronos Group in the past. Choosing DX12 is simply the sensible choice here.

The times were id software was in any way industry leading are also long over. They are just a small company compared to Electronic Arts, Ubisoft, ... and the guys working there aren't idiots. There is a reason why they choose DX12. Devs are interested in good tech, not in deluded conspiracy theories, where DX is allegedly "hurting" developers and consumers.

Maybe their games would be slighty more complex than "walking into a room and killing everything x 100 times", if they didn't spend so much time on OpenGL/Vulkan.

Do you care to point out the flaws in their argument, rather than just calling it flawed? It seems rather reasonable to me. And with the free upgrade going away, it seems like Windows 10 installs will plateau, or at least have a dramatic cut in the growth rate.
 

Durante

Member
Just think about the memory subsystem of a gaming PC and a XB1, and it becomes clear that you'll never be able to universally treat them as the same platform from a high-performance engine perspective.
 

Krejlooc

Banned
I'd like to learn more about this Vulkan API. Waiting on the programming book to release in Oct.

If you're waiting for published literature to help you learn the ropes, you can get a jump start right now by picking up some books on SDL 2.0. You still need an API to handle all the things beyond graphics, and SDL 2.0 will overwhelmingly be the API you turn to do that with. SDL 2.0 and Vulkan go together much like SDL and OpenGL went together.
 

wapplew

Member
Why MS lock dx behind new version of Windows? Dx10, dx12, doesn't seems like impossible on older Windows from software perspective.
I get that they want to sell Windows license previously, but now they just want to become digital store middlemen more than sell Windows, why not support older Windows and open digital store there?
 
Just out of interest, what's the uptake on Vulkan like so far? Doom is the first major game I've seen really back it so are many devs deciding to use it or is DirectX going to win another round?
 
Do you care to point out the flaws in their argument, rather than just calling it flawed? It seems rather reasonable to me. And with the free upgrade going away, it seems like Windows 10 installs will plateau, or at least have a dramatic cut in the growth rate.

I did. WIndows 7 will become irrelevant for AAA gaming very fast.

This whole discussion basically boils down to this:

On one side, we have devs who want to use the latest technology with the best tools and documentation. Technology which gives them the ability to make the best games with as much comfort as possible, in the shortest time possible.

On the other side we have ideologists who think they need to fight against big bad Microsoft and their evil proprietary DX. They quickly dismiss the realities of game development and the advantages of DX. And when they realize that neither devs, nor customers and publishers really care about their hypothetical fears, they don't understand the world anymore. See those tweets above.
 

Figments

Member
Why MS lock dx behind new version of Windows? Dx10, dx12, doesn't seems like impossible on older Windows from software perspective.
I get that they want to sell Windows license previously, but now they just want to become digital store middlemen more than sell Windows, why not support older Windows and open digital store there?

Methinks it has more to do with moving forward with the new OS rather than retroactively supporting the older ones. There's nothing technically impossible about supporting older operating systems, but they don't want to be hampered by working with code that old, I guess?

I dunno. I don't work at Microsoft.
 
Well he's not wrong. Many users don't want to jump to Windows 10, and thus results in two different apis needed for it to work on all recent OS's.
 
Top Bottom