MS's future approach to Windows 10/Xbox game integration and the success/failure of UWP

Shifty Geezer

uber-Troll!
Moderator
Legend
When MS introduced UWP, it implied a future where games were built and deployed to the Windows Store for PC and XBox use, with "buy once, play anywhere." This should have seen a lot of XBox games appearing on the Windows Store and giving it some more value where it might then have gone on to offer a rival to Steam and a valid software distribution platform.

Well, my wrestling with UWP deployment and the lack of online community around it has me wondering if this idea hasn't really taken off. There are numerous deployment bugs going back months that aren't being fixed. Looking up Play Anywhere games, there's 69 (out of 2400):

https://www.microsoft.com/en-gb/store/top-paid/games/pc?gameCapabilities=XPA&category=

Certainly I'm left thinking I should stick to Steam et al for PC and deploy to XBox Standalone as an XBox title, not Windows Store, and I'm wondering if that's what devs at large are doing? Is Play Anywhere as good as dead? If so, what does that mean for the unified Windows/Xbox future? Are MS going to try something else starting with XBSX?
 
i think you are spot-on. even MS first party games doesnt use UWP XPA but use xbox games ported to win32 packed into UWP AFAIK
 
Not dead at all. They're explicitly supporting this with next-gen when they said buy on Xbox One and play on Xbox Series X assisted with their Intelligent Delivery functionality.

However, it is up to the other developers and publishers to support. Largely, outside of first party developers, few if any have supported it.

It's not that different with Sony's Cross-Buy functionality that people forgot even existed, but had to be touted again and again when MS unveiled their Intelligent Delivery functionality on XBox Series X.
 
Not dead at all. They're explicitly supporting this with next-gen when they said buy on Xbox One and play on Xbox Series X assisted with their Intelligent Delivery functionality.

However, it is up to the other developers and publishers to support. Largely, outside of first party developers, few if any have supported it.
If no-one uses it, it's dead in principle. MS may be offering it as an option, but if there aren't any uses, it's a defunct concept.

It's not that different with Sony's Cross-Buy functionality that people forgot even existed...
Cross-buy is just a store management thing. You upload different packages for each platform and the store allows you to download each of them. Play Anywhere requires using a UWP build that is platform agnostic across Windows devices, and this seems an incredibly unpopular choice. XBox One games aren't developed for UWP but for XBox native, and the Windows Store option isn't bothered with. This is a chicken-and-egg scenario. Why bother with the faff of creating a Windows Store version if no-one uses Windows Store? And why use Windows Store for games when there are no games on it?

What you describe for buy on XBox One, play on Series X sounds to me like Sony's Cross-Buy - a store-based delivery. It doesn't require UWP titles, and it's that concept, Windows Universal integration, a homogenised platform, that seems to me to be struggling once again instead of growing from strength to strength.

Hey, you've changed my title. I was talking about UWP and platform agnostic executables, and not cross-platform licensing. I have to change it back as you've changed the meaning of the discussion. This thread is about a novel MS approach to cross-platform title support across their Windows 10 based devices; Sony doesn't enter into it. The only other company that has a parallel is Apple if they offered a unified Mac and iOS application format.
 
Last edited:
Okay, I didn't know which direction you wanted to steer this and saw a potential tie-in with Sony's Cross-Buy. Not knowing any details about it, didn't know it's nothing like the Ms UWP direction.

Unfortunately, I don't see many, if any directly implementing UWP. I think everyone is just opting for the Store-Managed ownership with some sort of cross-platform Cloud Save technology to provide the "Play Anywhere" portion.

So the XBox Play Anywhere concept is alive and well from a consumer perspective. The implementation of it as UWP is dead.
 
The implementation is actually important for knowing why games are/aren't cross-buy. If it's a toggle on the store that the publisher can set, "let a purchase count as a license on all valid platforms," then the lack of buy-once titles is down to the publishers. However, if it's a case that the tooling requires a build for all platforms and that tooling sucks, then you could have publishers happy to support buy-once in principle but giving up on it in practice as more trouble than it's worth.

If MS are carrying on with a single build target, that'd imply not many cross-buy titles in future, whereas if they are giving up in the UWP idea and just using a store-based licensing tick, then there may be more cross-buy games in future. And if not, at least we'll know that's due to the publishers.

Before my journey into trying to get a game onto XBox, I had no idea what the state was like. And now from experience, I'm curious if it's pretty much defunct and whether the future for XBox development is to ignore UWP and Windows Store and just create XBox native apps. That then makes one wonder what MS is going to do to bring Windows 10 and XBox together. The idea of a single, unified platform is a bit of a bust with XB1. Are they going to take another crack at it with XBSX?
 
I think UWP is pretty much dead on pc.

Not entirely. While the Microsoft Store itself on PC has seen lackluster adoption (it's almost as bad as EGS in terms of functionality), Game Pass on PC is based off the Windows Store. So as long as that survives then by default UWP "survives".

That information likely doesn't help Shifty in making a decision though. With the lack of uptake of the Windows Store as a storefront, it's likely better to release on Steam and Xbox separately. Microsoft making it possible to release Win32 application on the Microsoft Store is them conceding that the majority of publishers and developers don't want to deploy a native UWP version of a program so the next step was to have Win32 wrapped in UWP.

The concept of Play Anywhere and having one codebase that runs on both PC and Xbox is attractive, but unless the Windows Store took off, it was always going to be a hard uphill battle. Had XBO managed to keep pace with PS4 they might have had a chance, but XBO falling far behind PS4 made the Microsoft Store that much less relevant to 3rd party developers.

Regards,
SB
 
The concept of Play Anywhere and having one codebase that runs on both PC and Xbox is attractive, but unless the Windows Store took off, it was always going to be a hard uphill battle. Had XBO managed to keep pace with PS4 they might have had a chance, but XBO falling far behind PS4 made the Microsoft Store that much less relevant to 3rd party developers.
Is it an idea worth pursuing? It seems very logical and valuable for fleshing out the Windows experience and bringing people to the Windows Store. If MS don't bother, then they effectively concede they make the OS and console but can't monetise the content on their OS, unlike Apple. Maybe they've given up that idea and are focussing on the cloud?
 
Is it an idea worth pursuing? It seems very logical and valuable for fleshing out the Windows experience and bringing people to the Windows Store. If MS don't bother, then they effectively concede they make the OS and console but can't monetise the content on their OS, unlike Apple. Maybe they've given up that idea and are focussing on the cloud?

I don't think Microsoft has conceded. Offering developers an option to wrap their Win32 code in a UWP wrapper still gets them into the UWP ecosystem. It's not ideal from a play anywhere standpoint...perhaps.

Getting developers in the UWP ecosystem could potentially get them to think about a UWP native application.

Alternatively, MS could work to make Win32 applications in a UWP wrapper executable on XBSX.

MS doesn't want native/naked Win32 applications on Xbox due to security concerns. The UWP wrapper would act as sort of a digital condom, isolating the Win32 application and preventing it from altering things in a way that it shouldn't. It would likely run in a VM anyway, so security should be relatively tight.

IMO, MS will have better success if they work on making Win32 accessible on XBSX through a UWP wrapper than trying to convince developers to write UWP native applications.

MS hasn't given up on UWP as evidenced by them still releasing versions of Windows that are limited to UWP apps out of the box. Granted an end user can unlock it to full desktop use as long there is nothing preventing it (say school or corporation IT if it's meant to be used in those environments).

Likewise Windows on ARM stands to gain if they can get more developers making UWP applications.

However, that said, they haven't made a really large push with it lately WRT gaming (other than Game Pass on PC). IMO, the launch or perhaps year after launch for XBSX might be key in seeing how committed they are WRT to UWP being a bridge between Windows gaming and Xbox gaming and not just as a way to make a Windows Trusted Platform.

Regards,
SB
 
That's really the issue - MS are still maintaining UWP but they aren't actively encouraging it, and it's a platform that doesn't sell itself. Going UWP doesn't gain you anything as a dev, neither sales nor visibility, AFAICS. Is UWP required for Game Pass? Technically I can't see anything stopping a dual-package option, servicing different executables to consoles and PC for the same library title. Why aren't MS investing heavily in the Windows Store to make it something good and meaningful??
 
That's really the issue - MS are still maintaining UWP but they aren't actively encouraging it, and it's a platform that doesn't sell itself. Going UWP doesn't gain you anything as a dev, neither sales nor visibility, AFAICS. Is UWP required for Game Pass? Technically I can't see anything stopping a dual-package option, servicing different executables to consoles and PC for the same library title. Why aren't MS investing heavily in the Windows Store to make it something good and meaningful??
We will MS step away from UWP. The new shell system will allow Win32 apps to run on where they want them to.

there is a small item on Windows 10X which is where MS is headed.
Yes you are correct that You should soonish expect to see them deprecated the UWP model in favour of Windows Shell which runs over windows Core.

honestly all the terms are so confusing. Sorry I can’t be of more assistance. But all variants of windows OS can be modified to fit the form factor (the shell) but run under lying same things (the core).

as I understand it; there is windows core and Xbox core so far as being the main cores.
It is, as I understand it, possible to switch cores. But I forgot where I read that.
 
We will MS step away from UWP. The new shell system will allow Win32 apps to run on where they want them to.

there is a small item on Windows 10X which is where MS is headed.
Yes you are correct that You should soonish expect to see them deprecated the UWP model in favour of Windows Shell which runs over windows Core.

honestly all the terms are so confusing. Sorry I can’t be of more assistance. But all variants of windows OS can be modified to fit the form factor (the shell) but run under lying same things (the core).

as I understand it; there is windows core and Xbox core so far as being the main cores.
It is, as I understand it, possible to switch cores. But I forgot where I read that.
This doesn't sound right to me.

I believe they are moving towards containerizing apps, but the shell would still be external to that.
Uwp isn't comparable to the shell.
 
as I understand it; there is windows core and Xbox core so far as being the main cores.
It is, as I understand it, possible to switch cores. But I forgot where I read that.
What's the future structure for game development targeting XBox and Windows going to be?
 
Correct me if I'm wrong, but I thought Play Anywhere is not just UWP. Play Anywhere is just their marketing name for buying the game once on Xbox & play it on PC or vice versa. It doesn't have to be coded as a UWP app correct?

Tommy McClain
 
This doesn't sound right to me.

I believe they are moving towards containerizing apps, but the shell would still be external to that.
Uwp isn't comparable to the shell.
You are correct. They are switching to a container model for the apps themselves. The UI is the shell. The core is the kernel effectively.
 
Having just looked it up, Play Anywhere apparently is for games that have separate Windows UWP and Xbox XDK builds. UWP cross-platform games aren't labelled as Play Anywhere, though of course can be played on any Win 10 device.

'Play Anywhere' appears to be a branding more than a feature definition, as not all games that can be played anywhere are marked as 'Play Anywhere'.

The important part at the moment is it still requires a UWP version and devs aren't at all interested in that. However, it looks like MS can support Play Anywhere through any PC game that uses XBLive!
 
P
Having just looked it up, Play Anywhere apparently is for games that have separate Windows UWP and Xbox XDK builds. UWP cross-platform games aren't labelled as Play Anywhere, though of course can be played on any Win 10 device.

'Play Anywhere' appears to be a branding more than a feature definition, as not all games that can be played anywhere are marked as 'Play Anywhere'.

The important part at the moment is it still requires a UWP version and devs aren't at all interested in that. However, it looks like MS can support Play Anywhere through any PC game that uses XBLive!
Play Anywhere is more about the license than the move to UWP. But yes; UWP is the underlying technology used for W10 store games. That won’t be needed in the future and games can freely be Win32 in a Win32 container that should still support licensing like Play Anywhere.
 
UWP is dead as a target platform. Even though it uses the exact same Direct3D 11/12 APIs for graphics, conceptually WinRT/UWP was designed as a mobile platform first and foremost, and features like forced suspending of background apps, file system sandboxing and touch-aware controls are irrelevant for desktop and console gaming.

With the demise of Windows 10 Mobile, there is no reason for desktop developers to choose UWP over MSIX-packaged Win32 apps, since everything they need is found in Win32 base services (Kernel32) and DirectX.

And mobile development is targeted by the cross-platform .NET 5 release, which unifies .NET/CLI with Xamarin/Mono; .NET 5 preview 1 has been released yesterday.


However, UWP as a collection of WinRT APIs is not dead or abandoned. Certain new APIs like "modern" XAML controls or VR/AR (HoloLens) are only available on the WinRT/UWP platform, and there are currently no plans to introduce Win32 versions of these APIs.

Instead, Microsoft allows MSIX-packaged Win32 apps to call WinRT APIs, though only a subset of the full WinRT API surface is available and mobile-only features are excluded.

Microsoft is improving WinRT/UWP in several ways, such as
1) reimplementing WinRT API interfaces with standard C++17 language projections by including the C++/WinRT headers in the SDK (replacing proprietary C++/CX extensions), and
2) moving UI development out of Windows codebase into separate WinUI 3 framework, which should unify "modern" controls for WinRT/UWP and .NET.

This could result in better quality UWP apps that would serve as direct replacements for bundled Win32 apps, like the UWP File Explorer in Windows 10X.


But right now, Win32 (with a subset of WinRT API) remains the platform of choice for performance demanding Windows applications, like graphics/video editors and enthusiast desktop games, and native Xbox games.
 
Last edited:
Back
Top