1. Getting started with D3D
This section provides a brief introduction to D3D Graphic programming interfaces (APIS. Here you will find an overview of the graphic pipeline and a guide to help you implement basic D3D functions.
1.1. D3D Architecture
This section describes the relationships between Microsoft D3D components, other Microsoft DirectX, operating systems, and system hardware. These topics are discussed below.
1.1.1. D3D Architecture Overview
This is a description of a graphic pipeline. The functionality of each block is described below. The connection contains more information.
For more information about the architecture of the D3D programmable section, see programmable vertex gradient architecture and programmable pixel gradient architecture.
1.1.2. Hardware Abstraction Layer
Microsoft's D3D uses HAL (Hardware Abstraction Layer) to provide device independence. HAL is a device-specific interface provided by the device manufacturer. D3D uses the display hardware directly. The program does not need to interact with HAL. Applications use a series of interfaces and methods exposed by D3D instead of the mechanisms provided by HAL to use display devices. Device manufacturers implement 32-bit programming on various WINDOWS platforms (XP, 2000, 98, etc. HAL can be a part of a display drive or an independent DLL that communicates with a device drive through an interface defined by the drive manufacturer.
D3D HAL is implemented by chip manufacturers, motherboard manufacturers, or OEMs. HAL only implements the code that the device depends on and runs without competition. If the hardware does not execute a function, HAL will not report it as a hardware function. In addition, HAL does not verify the parameters. D3D performs parameter verification before calling HAL.
In Microsoft DirectX 9, HAL can have three different vertex processing modes: Software vertex processing, hardware vertex processing, and hybrid vertex processing on the same device. The pure device mode is the variable of the HAL device. The pure device type only supports hardware vertex processing and only allows applications to query a small subset of the device status. In addition, pure devices are only available on adapters with minimal capacity.
1.1.3. Overall system
Displays the relationships between Microsoft D3D, GDI, HAL, and hardware.
In, we can see that both the D3D program and the GDI program access the graphics hardware through the device driver of the display card. Unlike GDI, D3D can use hardware features when selecting a HAL device. HAL provides hardware acceleration Based on the display card. You can use D3D to determine whether the device has this capability during operation.
For more information about devices, see device types.