Required DirectX 9.0 Driver Support
The DirectX 9.0 runtime will supply hardware acceleration if the display driver is a DirectX 7.0 or later driver. However, for a driver to be loaded by the operating system as a version 9.0 driver, it must implement the features that are described in the following sections:
A DirectX 9.0 version driver must support:
Reporting the capabilities of its device by returning a D3DCAPS9 structure when requested. The driver returns a D3DCAPS9 structure in response to a GetDriverInfo2 request using the D3DGDI2_TYPE_GETD3DCAPS9 value similarly to how it returns a D3DCAPS8 structure as described in Reporting DirectX 8.0 Style Direct3D Capabilities. Support of this request is described in Supporting GetDriverInfo2. D3DCAPS9 contains both DirectX 9.0 and DirectX 8.0 related capabilities. The driver must continue to report only DirectX 8.0 related capabilities in D3DCAPS8 when queried by the DirectX 8.0 runtime.
Setting the D3DFORMAT_OP_BUMPMAP flag in the dwOperations member of the DDPIXELFORMAT structure for all surface formats that can support bump mapping in either fixed-function or programmable-pixel pipes.
Reporting support of asynchronous query operations, even if the driver just responds by indicating that no query types are supported. For more information, see Verifying Support of Query Types. Querying asynchronously imposes two new requirements on the D3dDrawPrimitives2 DDI. For more information, see Imposing Requirements on the D3dDrawPrimitives2 DDI.
Letting applications perform other processing with busy present queues.