Recommended DirectX 9.0 Driver Support

It is recommended that DirectX 9.0 drivers set defaults for unused channels of texture formats.

Setting Defaults for Unused Channels of Texture Formats

Drivers and their devices should set a default value for the unused channels in texture formats so that applications can rely on a known value being present in those channels that are not provided by input textures.

Similarly to the way that the reference rasterizer for DirectX 8.1 and later versions sets the default value for the unused B channel in the D3DFMT_G16R16 texture format to 1.0f (see refrast.cpp sample code), a DirectX 9.0 version driver should set the default values for the unused channels in the following DirectX 9.0 floating-point texture formats to 1.0f:

  • D3DFMT_R16F

  • D3DFMT_G16R16F

  • D3DFMT_R32F

  • D3DFMT_G32R32F

A DirectX 9.0 driver should also set the following defaults:

  • The alpha channel (A) (for transparency) to 1.0f, which is opaque.

  • The luminance channel (L) to 1.0f, which produces a maximum light intensity.

The reference rasterizer also sets defaults for the B channel, in addition to the A channel, (of RGBA) to 1.0f for the D3DFMT_V16U16 format. In this way, the D3DFMT_V16U16 format operates interchangeably with the D3DFMT_L6V5U5 format, which actually has an L channel. In the D3DFMT_L6V5U5 format, luminance is placed in the B channel.