Skip to content

Questions about Direct3D

Short answers, pulled from the story.

What is Direct3D and what is it used for?

Direct3D is a graphics API for Microsoft Windows, part of the DirectX family. It is used to render three-dimensional graphics in performance-sensitive applications such as games, and it uses hardware acceleration when a compatible graphics card is present.

Who created Direct3D and when was it first released?

Direct3D grew out of a 3D graphics API called Reality Lab, developed by Servan Keondjian, Doug Rabson, and Kate Seekings at a company named RenderMorphics. Microsoft acquired RenderMorphics in February 1995, and the first version of Direct3D shipped with DirectX 2.0 on the 2nd of June, 1996.

What was the main competition to Direct3D in the 1990s?

Direct3D's main competitors were OpenGL, developed by SGI and now maintained by the Khronos Group, and 3dfx's Glide API. Microsoft and SGI attempted to merge Direct3D and OpenGL under a project called Fahrenheit in the 1990s, but that effort was eventually cancelled.

What major change did Direct3D 8.0 introduce?

Direct3D 8.0, released in November 2000, introduced programmable vertex and pixel shaders, allowing developers to write custom GPU code instead of relying on a fixed-function rendering pipeline. It also absorbed DirectDraw, making Direct3D the single rendering API for both 2D and 3D on Windows.

What is the difference between Direct3D feature levels and API versions?

Feature levels define minimum sets of hardware capabilities a graphics card must support, using underscores as delimiters (for example, 11_0). API versions refer to the runtime and its features, using dot notation (for example, Direct3D 11.4). Feature levels allow a single API version to run across a range of hardware generations.

Can Direct3D games run on Linux?

Yes. DXVK is an open-source Vulkan-based translation layer for Direct3D 8 through 11 that allows Windows games to run on Linux via Wine; it is used by Valve's Proton project. Direct3D 12 support on Linux is provided by the vkd3d library, also included in Proton.