nicebyte 5 hours ago

what do you mean when you say "built into the os"? d3d12 is just an api. the d3d runtime is user-space, both the UMD that wraps it and the KMD are supplied by the hardware vendor. In the end, both a d3d app and a vulkan app end up talking to the very same KMD. See here for reference:

https://learn.microsoft.com/en-us/windows-hardware/drivers/d...

  • mrpippy 3 hours ago

    D3D is clearly more integrated into the OS than Vulkan is.

    Most importantly, Windows includes a software D3D renderer (WARP) so apps can depend on it always being present (even if the performance isn’t spectacular). There are lots of situations where Vulkan isn’t present on Windows, for example a Remote Desktop/terminal server session, or machines with old/low-end video cards. These might not be important for AAA games, but for normal applications they are.

    Another example: Windows doesn’t include the Vulkan loader (vulkan-1.dll), apps need to bundle/install that.

    • nicebyte 3 hours ago

      > D3D is clearly more integrated into the OS than Vulkan is.

      sure, but addressing the two points that you brought up would not entail changing windows _the operating system_, just the stuff that ships with it. you could easily ship swift shader along with warp and the loader library, both of those are just some application libraries as far as the os/kernel is concerned. of course now we're in the territory of arguing about "what constitutes an OS" :-)

  • bobajeff 5 hours ago

    Oh, I was under the impression that Direct X 12 was built-in for Windows like Metal is on Apple.