-
Notifications
You must be signed in to change notification settings - Fork 287
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Is Windows Composition API dead? #353
Comments
I think it is, although some people are saying no. The problem with this system is that Microsoft don't know what it is and what to do with it. They targeted it as a system that sits between DirectX and WinUI, but then said that it's only meant to assist WinUI - the layer above. What they should have done is built it out to be a complete visualization system that WinUI, CustomUI's, Graphics apps and games could be built upon. And I'm sure people will say 'no, I'm wrong, it's this and that' and here we are, with no updates, no discussion and no general usage. It's very unclear to me what this system is meant to be and how I'm meant to integrate it into other things that I'm doing. And did I mention that no one uses it? I am in fact using it at the moment in an assignment (just because I don't want to use raylib), but beyond that, how am I meant to use it? UI.Composition runs out of steam pretty quickly.
If I'm using WinUI, then I'll likely just use WinUI. If I want to do something else like make a custom UI for games or for graphics projects, I don't think the UI Composition system is built out enough. It's missing a lot of features. I'll just revert to SharpDX or one of the new libraries like TerraFX or Vortice or - puke - use C++ and DirectX directly. Microsoft really struggle with modern graphics and .Net graphics. I think it's because the game development ecosystem team are only focused on C++ DirectX, while the .Net teams aren't really considering games and graphics. Until they are forced to work together and come up with some modern C# graphics libraries that are capable for use in various project types - including visualizations, simulations and games - we'll keep getting half-baked projects that are difficult to use in real projects. And yes, some people will use UI.Composition, but it has such a narrow scope, I just see this being killed off. Happy to be proven wrong. |
Apple and Google are able to provide UI.Composition like APIs for Swift, Java/Kotlin and Dart respectively on their platforms, while on Windows we are forced to reach out for community projects. This should be considered as it plays a role in getting developer adoption. |
I think there is a misunderstanding of what It is certainly not a full graphics library, it's meant for apps to communicate with the system compositor (DWM) to tell them how to compose their GUI. You're right that's it's sort of always used with UWP system XAML, but that's just a consequence of UWP system XAML itself being tightly integrated with the system compositor. You could technically build your own UI library on top of Other UI libraries tend to do their own UI composition rather than rely on DWM to do it (for various reasons, the primary ones probably being that they have complete control over the composition code and multi-plat support). Even WinUI 3 does its own composition and doesn't rely on The documentation about
You could probably do a game UI by putting the 3D content as the bottom layer with a I don't expect it to be great, since using Sorry to disappoint, but if you're looking for a modern (for a subjective meaning of the term) way to do graphics, an UI composition library is probably not what you're looking for. |
What happen to previous Windows Composition API initiative? Another WinUI 3D request discussion |
no commits since 2019, so is Windows Composition API dead?
The text was updated successfully, but these errors were encountered: