SneakersSO
Member
The reason why SneakerSO is saying what he is saying is because traditionally game development has been using engines to do some generalized code but then the devs go in and try to ease out the most power out of the system that their engine allows (also while having hackjobs on the side, render pipeline and such). So doing the same thing for 2 versions of a console is a nightmare because of the hackjobs to make stuff look good for both versions. I totally get that as a dev (not in gaming but I do that on the side).
The reason why people say UWP/UWA and mobile and such is because of opportunity cost. Normally you would (as a dev) be getting all the power out of the box as much as possible, find out ways to do it...but if there's another version of the hardware that should scale with your code (obviously you need settings for such stuff) then you wouldn't need to squeeze it out for the lower version. Yes, this does mean that the previous version of the console wouldn't be getting the best it possibly can. So the time a dev would be "wasting" to grab all that power could be used elsewhere. That's why Phil Spencer even mentioned decoupling the hardware from the software. There's downsides and upsides to both.
That's not to say that a dev should be throwing away time to make a game look/perform well. What it does say is that the generic code of the engines used need to take advantage of the APIs of DX12/UWP so that the scaling happens easier and get the performance as much as they possibly can towards the API and minimize the amount of "hacks" one has to do for a version. The hacks is the issue is because that's where testing comes in and that's where the cost is.
So I say that there will be a change in how one would be developing their code (depending on how they want to approach development). GDC will probably be answering a lot of these questions for devs. It's going to be a change of the mindset on how one approaches game development. So yes, in the traditional sense, yes, you're absolutely right SneakersSO. I see it (my opinion) that it will go to how it is in the mobile development space where you are easing the power of the API as much as one can and let the hardware/API do work that normally is on the dev. That's not to say that there won't be hacks, but it should be minimized. The engine folk are going to have a lot of changing to do.
Hopefully what I said makes sense.
I see what you're saying, but there is no reason for developers to change our approach in development for the sort of games we're discussing here. This announcement certainly isn't giving us a reason, as all this does is increase our budget for zero gain. There are a ton of mobile apps & what we traditionally label 'mobile games' that will ABSOLUTELY benefit from this. But if we're talking strictly in the sense of console & PC focused games? No. It's not changing. At least, its not changing so that MS could allow themselves the opportunity to release new console hardware every 2-3 years. Understand - DX12 isn't intrinsically tied to UWP. It's a graphical API library, and MS would never be stupid enough to make UWP/UWA compatibility a requirement in order to utilize DX12.
You just don't understand how a sophisticated game engine runs on the hardware we have to make it run on. We could absolutely reduce scope, functionality, & graphical capability in order to work directly through the W10 OS just for Xbox games, but then there will be way more devs who don't go that route, and specialize their game code they way they currently do. Its asking a lot from devs just to enable MS to take a gamble on a business strategy that most likely won't even work.