The driver complexity could be reduced significantly and the quirks for games could be implemented in an industry shared dx2vulkan layer.
Especially as newer games migrate to vulkan, the remaining DX games will run fine on the then much better hardware, compensating the possible overhead.
I mean, the DirectX SDK already has a similar runtime to use a DX11 swapchain on top of DX12, and 11-on-12 is how (as I understand it, though someone more knowledgeable feel free to correct me) DX11 is implemented on Xbox One and UWP
If you want to use Vulkan on Windows 10 UWP apps, yes it might be useful.
Vulkan is only supported in desktop mode using the same ICD driver mechanism used by OpenGL drivers, which is not currently supported in UWP sandbox model.
> Win32 is going the way of Carbon even if it takes a couple of years more, like it or not.
That's the thing, nobody likes it. They've been pushing "modern apps"[1] since 2012 and nobody notable is writing them. As Surface RT showed in the market, when forced to make the choice people will just abandon the product rather than put up with that mediocrity.
[1] Orwellian calling it "modern" just in the name, as if that saves a bunch of work to come up with actual modern stuff that works.
The new stuff is all COM and you are telling me it's not stuck in the 90s?
Many people prefer software that works. My experience with the newer APIs is that they are on average less reliable, more quirky, less thought through and battle tested. I think the larger problem is that the current staff cannot produce works with the same quality of the Microsoft of 10 or 20 years ago. So of course they cannot compete with their own legacy.
(Disclaimer: I was at MSFT from 2008-2011.)
> By the way, the new Office will be store only on Windows 10.
Good for Office. I'm sure it will work fantastically.
> The new stuff is all COM and you are telling me it's not stuck in the 90s?
No, because UWP is .NET done right, what was supposed to be COM Runtime, before Java made them create the CLR instead.
AOT compilation to native code, using a high performance object model with productive programming languages, object oriented, instead of plain old rusty C.
Microsoft APIs? Or APIs in general (which I doubt). Microsoft will try everything to push UWP into our PCs but I've been using Win10 for a couple years now and the only UWP application I (barely) use is Sticky Notes. The rest of my application ecosystem hasn't changed much.
And they're going to keep trying until it finally sticks. It's like Palladium or the Scientology Fair Game policy: just because people don't like it doesn't make it not critical to the organization. They just have to backpedal publicly to re-establish good PR, then sneak it in quietly while people's guard is down.
Microsoft isn't Apple. Their entire business relies on retaining as much backwards compatibility as possible
Every time they make any sort of major, sweeping change. They get raked over coals until they're charred to a god damn crisp
When Windows went from the old DOS-ish 95/98/ME to the much more stable NT based 2000 and XP, lots of things broke.
XP only survived the Microsoft EOL chopping block because of the rise of Netbooks. And even then, companies pay millions to keep that afloat due to how entrenched it is (Something likely to be repeated with Windows 7)
Vista brought a ton of (arguably much needed) changes. But its hardware requirements were pretty high for the time. Along with buggy drivers from Nvidia, that sank the entire operating system. Both in public perception and market share
Windows 7 (on release) was arguably a UI-tweaked Vista. Hardware had caught up by then, and a lot of people agreed that this was the "good" upgrade from XP
Windows 8 came out and tried to shoehorn that whole "Metro" interface and converge everything around it. And it flopped almost as hard as Vista did
Windows 10 Microsoft played a much stronger hand and dragged everyone they could (willing or otherwise, if you believed some accounts) over with a "free" upgrade for most. But it also pruned back Metro pretty hard. Instead trying to chase after the "App Store" model
And that's just the problem, innit. The App Store is making Windows irrelevant. Apple also has a FAR better security story, and part of it is because they whitelist everything that runs on their flagship devices.
Microsoft tried to do the same thing with Windows RT and Windows Phone. Didn't work. They were forced to backpedal, but they're not about to give up on making Windows Store the centerpiece of the Windows experience, and sideline, marginalize, and limit the capabilities of Win32 on the Microsoft platform -- "for security purposes" of course. Eventually, Win32 stuff will still run, but heavily sandboxed and unable to take advantage of cutting edge features of the Windows OS (HoloLens? Cortana? The database file system they've put off implementing for so long?). It could be that Windows 11 uses HyperV to run a Windows 7 instance for legacy apps while new stuff -- including support for newer graphics cards/GPUs -- must be compiled against UWP in order to run on the main kernel instance.
That’s true, but quite a lot of modern desktop software still comes with 32-bit binaries. Even Microsoft’s own software: visual studio and skype are still 32 bit, office has both versions…
Except Microsoft is not Apple and even Apple did not nearly succeed in getting developers to use their App Store on the desktop. They did get developers to use Cocoa but that is clearly much better than Carbon and Apple worked hard to make it do everything Carbon does.
The selling point for developing on Windows is that you can mostly do anything and the Store is a sandbox. Developers aren’t going to want to get into the sandbox. And that’s ignoring the situation Microsoft has created where nobody wants to invest in new platforms because Microsoft keeps abandoning them.
Groove Streaming Music
Microsoft Office Groove
Access Services for SharePoint Online
Microsoft Continuum
Skype for Business
Kinect Adapter
Microsoft Band
Xbox One TV DVR
Kinect Xbox One
Kinect Windows
Wunderlist
Sunset
Games for Windows
Silverlight
Zune
Kin
XNA
PlaysForSure
Flight Sim
Expression Suite
SteadyState
Windows RT
Windows Phone 10
Windows Phone 8.1
Windows Phone 7
Forefront
Front Page
Money
Thanks for that. That Wikipedia entry uncovered these additional discontinued products
Microsoft Forefront Threat Management Gateway
Microsoft Forefront Unified Access Gateway
Microsoft Forefront Identity Manager
Microsoft Proxy Server
Windows Essential Business Server
Microsoft Robotics Developer Studio
Microsoft BackOffice Server
Content Management Server
Microsoft SNA Server
Microsoft Site Server
Microsoft Merchant Server
Microsoft Groove Server
System Center Capacity Planner
Microsoft Commerce Server
Microsoft SharePoint Workspace
Microsoft InfoPath
Microsoft Office Document Imaging
Microsoft Office Document Scanning
Microsoft PhotoDraw 2000
Microsoft Photo Editor
Microsoft Schedule Plus
Microsoft Virtual PC
Microsoft Vizact 2000
Microsoft Data Analyzer 2002
Microsoft Ofice Assistant
Microsoft SharePoint Designer
Microsoft Office InterConnect
Microsoft Office Picture Manager
Microsoft Entourage
Microsoft Office Forms Server:
Microsoft Office Project Portfolio Server
Microsoft Office PerformancePoint Server
Office Live Small Business
Office Live Workspace
Office Live Meeting
I don’t think Skype for Business and Wunderlist have been discontinued. But my comment was more about things like ‘PlaysForSure,’ Silverlight and Windows Phone. It’s not really that big a problem they discontinued Space Cadet.
The question is whether Windows will die sooner than UWP will be fixed to become an acceptable replacement for Win32. The main reason why Windows is still relevant (even despite Microsoft's desperate attempts to kill it) is Steam games and some legacy software that hasn't been ported to Electron yet. Forcing new apps to use UWP in its current broken state can only accelerate the death of desktop Windows.
As awful as Windows 10's user experience is, it is still miles better than any of the (far too many) Linux Desktops. Linux Desktop evangelists who only ever develop web software and basically use the browser as their OS will continue to scratch their heads and wonder why their argument of "your use case isn't what we designed for!" isn't convincing anyone to switch.
Everyone I know still buys from retail, as they care to have something physical.
Also UWP has the XBOX titles, and if Microsoft really wanted they could just pull all their titles out of Steam, assuming whatever contracts they have in place make it possible.
Typical Xbox games aren't implemented on UWP though, it's just a way for hobbyists to get small apps running on the Xbox without a costly developer account and devkits (https://docs.microsoft.com/en-us/windows/uwp/xbox-apps/). The restriction of Microsoft games to the MS App Store is an entirely political decision. I'm certain the actual developers down in the trenches would be more than happy to code against plain Win32+D3D12 (or D3D11) and distribute their games through Steam.
They don't need to be. Steam is a serious player in games distribution, and if avoiding certain APIs is necessary to publish on Steam, that's what developers will do. (Or rather, it's what they will continue to do.)
Same for uPlay, Origin, and whatever it was that Rockstar made. No-one uses Microsoft's app-store for distributing retail games, and that isn't about to change, even if Microsoft hold their own technologies hostage.
Digital overtook physical in 2010 [1] and has only taken a more commanding lead since then. Physical PC games are, essentially, dead, with only a quarter of sales being physical in 2016 [2].
> Vulkan is only supported in desktop mode using the same ICD driver mechanism used by OpenGL drivers, which is not currently supported in UWP sandbox model.
It really sucks that Dvxk has to warn against the dangers of using it for online gaming:
"Manipulation of Direct3D libraries in multi-player games may be considered cheating and can get your account banned. This may also apply to single-player games with an embedded or dedicated multiplayer portion. Use at your own risk."
The problem is not only hooking into the rendering, DLL injection can be used to take over the entire process and basically do whatever you want in a game client.
The driver complexity could be reduced significantly and the quirks for games could be implemented in an industry shared dx2vulkan layer.
Especially as newer games migrate to vulkan, the remaining DX games will run fine on the then much better hardware, compensating the possible overhead.