It’s very common for cross-platform game engines to support both DirectX and OpenGL, and even Vulkan. Why would a studio want to write abstraction code 2, 3, or even 4 times? OpenGL/Vulkan are practically on par with DirectX. In my experience, businesses care about their bottom line. Paying developers to write duplicate code gets expensive very quickly. It’d be nice to use the most native API for each target platform, but I don’t understand how the cost and overhead is worth it. Since Windows support OpenGL/Vulkan, why bother writing the DirectX code when the final game will look nearly identical?