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

Discussion in 'Console Industry' started by Shifty Geezer, Mar 16, 2020.

  1. DmitryKo

    Regular

    Joined:
    Feb 26, 2002
    Messages:
    881
    Likes Received:
    1,022
    Location:
    55°38′33″ N, 37°28′37″ E
    FYI, Paul Thurrot has a great round-up on the future of Windows APIs:

    Microsoft Explains the Future of the Windows 10 App Platform
    The Future of Windows, Vaguely (Premium)
    Microsoft Confirms UWP is Not the Future of Windows Apps

    Here's a slide from Ignite 2019 session BRK3323, Windows App Development Roadmap: Making Sense of WinUI, UWP, Win32, .NET
    https://myignite.techcommunity.microsoft.com/sessions/81330
    [​IMG]

    UWP already has support for desktop productivity apps with multiple instances and multi-document interface; additional improvements should come (MSBuild2018 session BRK3506). But it's not a fully capable desktop platform yet - even a simple Notepad clone is quite hard to reimplement as an UWP app.

    I assume WinRT/UWP/WinUI would evolve with time to offer full-featured desktop experience, but I guess it would take another rebranding and a new major version of the framework - one that:
    1) offers a clear transition path for traditional Win32 "desktop" User32/GDI/ComCtl32/MFC and WinForms applications, "cross-platform" .NET WPF/Xamarin.Forms applications, and "mobile" UWP applications,
    2) uses modern C++20/23/26 language features to maintain parity with C# on the .NET platform and memory-safe languages like Rust, and
    3) uses C++/WinRT, Rust/WinRT, and C#/WinRT projections for the "lightweight COM" interfaces​
    - before developers would accept WinRT/WinUI as the "Windows 10 API", if they could be lured back to the heavily fragmented Windows API landscape at all...

    Such reengineering is certainly a huge undertaking, and Microsoft is probably not ready to commit to it in lieu of their current "mobile first, cloud first" strategy, since they're not certain standalone desktop Windows platform can survive in the long run...
     
    #21 DmitryKo, Mar 20, 2020
    Last edited: May 21, 2020
    Jay, PSman1700, orangpelupa and 3 others like this.
  2. Arwin

    Arwin Now Officially a Top 10 Poster
    Moderator Legend

    Joined:
    May 17, 2006
    Messages:
    18,357
    Likes Received:
    2,006
    Location:
    Maastricht, The Netherlands
    The way I understand it, Microsoft is to evolve Xamarin together with existing Xaml standards into a new NET Core based cross platform UI ... will be interesting to see if it takes off.
     
    iroboto likes this.
  3. PSman1700

    Veteran Newcomer

    Joined:
    Mar 22, 2019
    Messages:
    4,555
    Likes Received:
    2,088
    The desktop/workstation/laptop will probably exist forever.... Windows will have to be 'cross platform'.
     
  4. DmitryKo

    Regular

    Joined:
    Feb 26, 2002
    Messages:
    881
    Likes Received:
    1,022
    Location:
    55°38′33″ N, 37°28′37″ E
    Windows 10 does support ARM64 and AMD64 platforms, but application software is slowly integrating with the cloud, so web-based operating systems like ChromeOS (and Fuchsia) may eventually displace Windows on the traditional desktop/laptop/tablet PC form factor.

    Not sure it's possible. There are several versions of XAML - Silverlight vs WPF vs Xamarin.Forms vs UWP/WinUI - with too many subtle differences making them incompatible with each other, even though the basic synthax is the same.
    They do plan to port WPF / Xamarin.Forms to the cross-platform runtimes (i.e. Linux, MacOS, iOS, Android, and probably tvOS, watchOS and WebAssembly) in .NET 5.
     
    #24 DmitryKo, Mar 23, 2020
    Last edited: Mar 23, 2020
  5. PSman1700

    Veteran Newcomer

    Joined:
    Mar 22, 2019
    Messages:
    4,555
    Likes Received:
    2,088
    No idea about windows 10 dissapearing, but tablets and laptops, and perhaps even workstations/desktops i have a hard time to believe. There will allways be people/corporates needing tablet sized devices, laptops and yes even workstation-like devices.
    We can have everything on the cloud, but how do we access it? Some still need that tablet sized screen, i can understand thin clients someday, but that also needs to run an OS, over distance or something.

    Edit: or i'm understand what you mean the wrong way? You mean that windows will be displaced, not the devices people use it on?
     
  6. Silent_Buddha

    Legend

    Joined:
    Mar 13, 2007
    Messages:
    17,702
    Likes Received:
    7,705
    As long as this happens after I'm dead, I'm fine with it. I absolutely cannot stand cloud based applications for the most part. I tried ChromeOS for 6 months last year and it annoyed me so much that I ended up just donating it to charity. I briefly thought about taking it out to hill out back and shooting it with a variety of guns, but that would have been a waste of hardware. Bleh.

    Mobile (smart devices) computing is just as bad IMO. Trying to browse the web on a phone? OMG, it's like being back in jail (don't ask). Office applications on a smart phone? I'd rather break my leg.

    I know this is a bit of a rant and many people are perfectly fine doing those things on limited devices, but ugh. :)

    Then again people have been saying that desktop Windows is going to die within the next 5 years for the past 20+ years. So, I'm not too worried yet, even with MS preparing for that possible eventuality.

    Regards,
    SB
     
    Silenti, Michellstar and PSman1700 like this.
  7. PSman1700

    Veteran Newcomer

    Joined:
    Mar 22, 2019
    Messages:
    4,555
    Likes Received:
    2,088
    No worrys, not going to happen. But in the future maybe we all are streaming everything, no more consoles all will be Stadia. How bad that sounds, it probably is going to happen.
     
  8. Silent_Buddha

    Legend

    Joined:
    Mar 13, 2007
    Messages:
    17,702
    Likes Received:
    7,705
    I wouldn't say it's not going to happen. If the possibility didn't exist then MS wouldn't be preparing for the possibility.

    Regards,
    SB
     
    AzBat and PSman1700 like this.
  9. PSman1700

    Veteran Newcomer

    Joined:
    Mar 22, 2019
    Messages:
    4,555
    Likes Received:
    2,088
    Its going to happen, no more hardware processing at home, for pc and console. But thats far away.
     
  10. DmitryKo

    Regular

    Joined:
    Feb 26, 2002
    Messages:
    881
    Likes Received:
    1,022
    Location:
    55°38′33″ N, 37°28′37″ E
    Yes. Other operating systems might replace Windows 10 on existing Intel and ARM platforms and devices.

    True for you and me, but most people just watch Youtube videos and send one-liner tweets.

    Even if Microsoft stopped all development and support today, users will still be using Windows for some years to come, even on new unsupported hardware. But ten years from now, will anyone still need Windows 10 to run their desktop applications? With .NET Core /.NET 5 going cross-platform, WPF/WinForms developers will soon be able to run their desktop applications on Linux desktops and Android/iOS tablets. And besides UWP/WinUI, Microsoft has not offered a clear vision of the future of the OS, even though desktop/business users and developers alike just hate UWP.
     
    #30 DmitryKo, Apr 20, 2020
    Last edited: Apr 20, 2020
  11. DmitryKo

    Regular

    Joined:
    Feb 26, 2002
    Messages:
    881
    Likes Received:
    1,022
    Location:
    55°38′33″ N, 37°28′37″ E
    FYI Microsoft announced "Project Reunion" at the Build 2020 keynote today.

    https://github.com/microsoft/ProjectReunion
    https://www.thurrott.com/windows/wi...ttempt-at-unifying-windows-10-app-development
    https://www.neowin.net/news/project-reunion-is-microsofts-new-plan-to-unify-uwp-and-win32

    I understand that it's a standalone componentized version of the UWP framework for Win32, .NET Core 5, and React Native / Uno Platform developers using C++, Rust, C#, and JavaScript.
    It will support deployment downlevel on Windows 8.1 in addition to Windows 10.
    Binary DLLs will be distributed to developers as versioned NuGet packages - can be shipped with your application's MSIX package, or other installation/packaging tools.


    So far, the core components include WinUI 3 (a combination of UWP XAML controls and Xamarin.Forms / MAUI controls for Win32 and .NET apps), WebView 2 (Chrome-based web browser control), and MSIX packaging tool (for Windows 10) or MSIX Core tool (for downlevel Windows 7+). Azure's Windows Virtual Desktop is supported.

    The've also announced RUST/WinRT and C#/WinRT language bindings in addition to C++/WinRT.


    More details shall come with BUILD 2020 sessions

    INT111 Unifying and evolving the Windows app platform
    INT116 Everything you need to know about WinUI
     
    #31 DmitryKo, May 19, 2020
    Last edited: May 20, 2020
  12. BRiT

    BRiT (>• •)>⌐■-■ (⌐■-■)
    Moderator Legend Alpha

    Joined:
    Feb 7, 2002
    Messages:
    18,795
    Likes Received:
    21,097
    BTW: The earliest session for Unifying and evolving the Windows app Platform is today, in a little under under 4 hours.

    upload_2020-5-19_13-56-13.png
     
    pharma and PSman1700 like this.
  13. DmitryKo

    Regular

    Joined:
    Feb 26, 2002
    Messages:
    881
    Likes Received:
    1,022
    Location:
    55°38′33″ N, 37°28′37″ E
    Well, no new information was given on componentized UWP and Win32 libraries, beyond invitation to post requests on GitHub. Looks like there are no specific plans at this point, at least not until they finalize WinUI 3 preview this Fall.


    More interesting is the announcement of .NET MAUI (Multi-platform App UI) which is planned for .NET 6 release in November 2021.

    This will be a single-project cross-platform framework that replaces Xamarin.Forms, with native look on Windows, iOS, MacOS, and Android.
    It supports Model-View-Update (MVU) - i.e. pure C# code based control rendering, as in React, Redux, Flutter, Elm, Fabulous etc. - in addition to Model-View-ViewModel (MVVM) and XAML.

    I suppose MAUI will be mapped to a future version of WinUI on Windows, which also supports MVU - though complex controls are be much easier to support with XAML, because direct coding needs too much glue.

    I doesn't really look like they plan to resolve XAML dialect differences with WPF or support other legacy frameworks - going forward, it's all Xamarin.Forms 5 for Net Core 5 and MAUI for Net 6.


    devblogs.microsoft.com/dotnet/introducing-net-multi-platform-app-ui/
    devblogs.microsoft.com/xamarin/microsoft-build-2020-xamarin/
    github.com/dotnet/maui
    github.com/Clancey/Comet

    BOD106 The Journey to One .NET 01:11:44
    BOD107 Build native apps for any device with .NET 00:39:19
    MSBuild Live: Digging into new .NET 5, MAUI, MVU Features and Architecture ( twitch.tv/clancey )
     
    #33 DmitryKo, May 20, 2020
    Last edited: Mar 9, 2021
    pharma and BRiT like this.
  14. DmitryKo

    Regular

    Joined:
    Feb 26, 2002
    Messages:
    881
    Likes Received:
    1,022
    Location:
    55°38′33″ N, 37°28′37″ E
    BTW I seem to have missed some important updates on Project Reunion and C++ language projections from last Fall:

    1) WinUI Modern Windowing would replace exising WinRT/UWP CoreWindow, ApplicationView, AppWindow classes with new high-level windowing APIs built upon a low-level interoperability layer based on USER/GDI structures and APIs;
    2) Win32 Metadata project provides WinMD definitions for the full set of Win32 APIs, which could be used to implement projections for additional programming languages;
    3) C++/Win32, Rust/Windows, and C#/Win32 provide C++17, C#, and Rust projections for the desktop Windows SDK (aka Win32), in addition to existing projections for WinRT/UWP (C++/WinRT, Rust/WinRT, C#/WinRT), potentially merging them into a single library for each language.​

    These would implement important features needed for broad adoption of WinUI and Project Reunion which I talked about in the post above, i.e.:

    1) provide a transition path for USER32/GDI, ComCtl32/MFC, and WinRT/UWP applications;
    2) replace C-style macros in Windows SDK with modern type-safe language constructs; and
    3) pave the way for reimplementing Windows SDK with modern C++20/23/26 language features (coroutines, concepts, contracts, reflection, deterministic exceptions, etc.) instead of proprietary extensions and 'lightweight COM'.​

    Initial releases are currently scheduled for end of 2021 in Project Reunion roadmap, WinUI 3 feature roadmap, and Win32 Metadata roadmap.

    PS. A few excerpts from the Modern Windowing announcement (emphasis is mine):

    The Register has a nice roundup of the announcement and discussion that followed:
    https://www.theregister.com/2020/09/01/microsoft_windows_windowing_api_project_reunion/
     
    #34 DmitryKo, Mar 9, 2021
    Last edited: Mar 11, 2021
    Silent_Buddha, Malo and BRiT like this.
Loading...

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...