Hacker News new | ask | show | jobs
by maccam94 2878 days ago
Are there any D3D12 platforms that don't also support Vulkan?
3 comments

Windows, partially. Vulkan can be used in classic win32 apps but not in "modern" UWP apps.

The Xbox One uses a variant of D3D12 and doesn't support Vulkan at all.

> Vulkan can be used in classic win32 apps but not in "modern" UWP apps.

Why is this/how do they enforce that?

The Xbox is hardly a surprise, but then again you're only going to target that for games so it's less of a problem.

> Why is this/how do they enforce that?

Technically Windows doesn't support Vulkan at all, but the openness of the win32 platform allowed Khronos to define a "backdoor" interface where the application ignores the Windows graphics stack and instead gets a Vulkan context by talking to the graphics driver directly. The UWP sandbox makes this impossible so you're stuck with the native Direct3D APIs.

I don't think UWP with Vulkan is completely impossible.

https://github.com/KhronosGroup/Vulkan-Docs/issues/366

It doesn't exist now though for sure, so for all practical purposes UWP locks developers out of using Vulkan.

Ahh, I had no idea UWP implied running on microsoft's terms. Is there a way to run them out of the sandbox manually?
Statistically, nobody actually builds real UWP apps, so it is largely an academic point. But if you're out of the sandbox, I fail to see a good reason not to just build a regular old Win32 app the way it has always been done.
Microsoft has decided to approach the problem by other means, meaning the introduction of MSIX containers for Win32, and merging both worlds.

The next Office for Windows 10 being store only is already an indication how things will go from now on.

If you are on Windows on ARM then there is no option other than UWP apps. Why would anyone buy an ARM laptop if they have to rely on emulation for everything anyway. It's not like the ARM laptops are any cheaper than the intel ones. (they actually have worse specs and cost more)
Older Intel chips (pre-Skylake IIRC) don’t have Vulkan support on Windows, even though they do on Linux.
I am not completely sure, but I can imagine XBox One.