20 Facts About Direct3D

1.

Direct3D is a graphics application programming interface for Microsoft Windows.

FactSnippet No. 1,598,733
2.

Part of DirectX, Direct3D is used to render three-dimensional graphics in applications where performance is important, such as games.

FactSnippet No. 1,598,734
3.

Direct3D uses hardware acceleration if it is available on the graphics card, allowing for hardware acceleration of the entire 3D rendering pipeline or even only partial acceleration.

FactSnippet No. 1,598,735
4.

Direct3D exposes the advanced graphics capabilities of 3D graphics hardware, including Z-buffering, W-buffering, stencil buffering, spatial anti-aliasing, alpha blending, color blending, mipmapping, texture blending, clipping, culling, atmospheric effects, perspective-correct texture mapping, programmable HLSL shaders and effects.

FactSnippet No. 1,598,736
5.

Integration with other DirectX technologies enables Direct3D to deliver such features as video mapping, hardware 3D rendering in 2D overlay planes, and even sprites, providing the use of 2D and 3D graphics in interactive media ties.

FactSnippet No. 1,598,737
6.

Direct3D contains many commands for 3D computer graphics rendering; however, since version 8, Direct3D has superseded the DirectDraw framework and taken responsibility for the rendering of 2D graphics.

FactSnippet No. 1,598,738
7.

Direct3D offers full vertex software emulation but no pixel software emulation for features not available in hardware.

FactSnippet No. 1,598,739
8.

For example, if software programmed using Direct3D requires pixel shaders and the video card on the user's computer does not support that feature, Direct3D will not emulate it, although it will compute and render the polygons and textures of the 3D models, albeit at a usually degraded quality and performance compared to the hardware equivalent.

FactSnippet No. 1,598,740
9.

Direct3D initially implemented an "immediate mode" 3D API and layered upon it a "retained mode" 3D API.

FactSnippet No. 1,598,741
10.

Only two games that sold a significant volume, Lego Island and Lego Rock Raiders, were based on the Direct3D retained mode, so Microsoft did not update the retained mode API after DirectX 3.

FactSnippet No. 1,598,742
11.

Direct3D subsumed all remaining DirectDraw API calls still needed for application development, such as Present, the function used to display rendering results.

FactSnippet No. 1,598,743
12.

Direct3D was not considered to be user friendly, but as of DirectX version 8.

FactSnippet No. 1,598,744
13.

Direct3D 8 contained many powerful 3D graphics features, such as vertex shaders, pixel shaders, fog, bump mapping and texture mapping.

FactSnippet No. 1,598,745
14.

Direct3D 12 allows a lower level of hardware abstraction than earlier versions, enabling future games to significantly improve multithreaded scaling and decrease CPU utilization.

FactSnippet No. 1,598,746
15.

Direct3D 12 learned from AMD Mantle in command lists and bundles, aiming to ensure the CPU and GPU working together in a more balanced manner.

FactSnippet No. 1,598,747
16.

The aim of Direct3D is to abstract the communication between a graphics application and the graphics hardware drivers.

FactSnippet No. 1,598,748
17.

Direct3D 10 introduced a much simplified set of mandatory hardware requirements based on most popular Direct3D 9 capabilities which all supporting graphics cards had to adhere to, with only a few optional capabilities for supported texture formats and operations.

FactSnippet No. 1,598,749
18.

Direct3D 12 introduces a revamped resource binding model which allows explicit control of memory.

FactSnippet No. 1,598,750
19.

Direct3D Mobile is derived from Direct3D but has a smaller memory footprint.

FactSnippet No. 1,598,751
20.

Direct3D comes with D3DX, a library of tools designed to perform common mathematical calculations on vectors, matrices and colors, calculating look-at and projection matrices, spline interpolations, and several more complicated tasks, such as compiling or assembling shaders used for 3D graphic programming, compressed skeletal animation storage and matrix stacks.

FactSnippet No. 1,598,752