Re: Xbox Series S/X UWP

Jason Ekstrand <[email protected]>
Newsgroups gmane.comp.video.mesa3d.devel
Message-ID <CAOFGe97rWz=N1NrYwvjbZw6dyc-91Ox7ffnv3XGWZUcU3LNCFw@mail.gmail.com>
On Mon, Jun 6, 2022 at 11:38 AM Jesse Natalie <[email protected]>
wrote:

> (Hopefully this goes through and not to spam like last time I tried to
> respond…)
>
>
>
> No, neither of these would currently work with UWP.
>
>
>
> The primary reason is that neither Khronos API has extensions to
> initialize the winsys on top of the UWP core window infrastructure. In
> theory, you could initialize Dozen for offscreen rendering and then
> explicitly marshal the contents out – that would probably work actually.
> There’s 2 more gotchas there though:
>
>    1. The ICD loaders (OpenGL32.dll, Vulkan-1.dll) are not available in
>    the UWP environment. You could explicitly use the non-ICD version of GL
>    (i.e. Mesa’s OpenGL32.dll from the libgl-gdi target), include the
>    open-source Vulkan ICD loader, or use the ICD version of either
>    (OpenGLOn12.dll/libgallium_wgl.dll for GL – I plan to delete the former at
>    some point and just use the latter at some point; vulkan_dzn.dll for VK).
>
> If the objective here is to write a Vulkan app and ship it in UWP, I don't
see any reason why it couldn't be used for that eventually.  Without the
loader, you can still load the driver DLL directly.  You just have to use
vkGetInstance/DeviceProcAddr for everything because drivers don't expose
the Vulkan 1.0 API symbols (the loader does).  We'd also have to come up
with a story for window-system integration, as Jesse alluded.  I'd love to
see Mesa used to bring Vulkan to consoles!  Unfortunately, no one's working
on that currently or has any plans, as far as I know.

--Jason



>
>    1.
>    2. There’s not currently extensions for D3D12 interop either spec’d or
>    implemented.
>
>
>
> There’s one more problem for GL that I don’t think is problematic for VK,
> which is that it uses APIs that are banned from the UWP environment,
> specifically around inserting window hooks for Win32 framebuffer lifetime
> management. So you’d probably have to build a custom version that has all
> of that stuff stripped out to get it to be shippable in a UWP.
>
>
>
> We (Microsoft) don’t really have plans to add this kind of stuff, at least
> not in the near future, but I’d be open to accepting contributions that
> enable this.
>
>
>
> -Jesse
>
>
>
> *From:* mesa-dev <[email protected]> *On Behalf Of *Daniel
> Price
> *Sent:* Monday, June 6, 2022 5:41 AM
> *To:* [email protected]
> *Subject:* [EXTERNAL] Xbox Series S/X UWP
>
>
>
> You don't often get email from [email protected]. Learn why this is
> important <https://aka.ms/LearnAboutSenderIdentification>
>
> Hi, I was wandering if these two layers would work with UWP on Xbox Series
> Console or if not will there be plans to add support?
>
>
>
> https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14766
>
>
>
> https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14881
>
>
>
> Many Thanks
>
> Dan
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.