共用方式為


必要的 DXGI 格式

本主題提供 Microsoft Direct3D 功能層級在使用者模式顯示驅動程式上放置的需求。

第一個數據表的第一和第二個數據行會顯示驅動程序必須支援的所有 Direct3D 格式類型。 第三個數據行會顯示驅動程序必須支援的 Direct3D D3D10_FORMAT_SUPPORT 和/或 D3D11_FORMAT_SUPPORT 列舉的所有相關聯常數值。 第四個數據行會顯示驅動程序必須支援每個格式的最低 Direct3D 功能層級。

第二個數據表顯示每個列舉值的 Direct3D 10Level 9 支援演算法。

D3D9 格式 (D3DDDIFMT_* 和/或 D3DDECLTYPE D3D10+ API 對等 (DXGI_FORMAT_) 必要的D3D10_或D3D11_ FORMAT_SUPPORT_* 列舉值 最低必要 Direct3D 層級
A32B32G32R32F或D3DDECLTYPE_FLOAT4 R32G32B32A32_FLOAT

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

Mip

MIP_AUTOGEN

RENDER_TARGET

CPU_LOCKABLE

9_1

9_2

9_3

9_3

9_2

9_3

9_3

9_2

9_2

D3DDECLTYPE_FLOAT3 R32G32B32_FLOAT

IA_VERTEX_BUFFER

9_1

A16B16G16R16F或D3DDECLTYPE_FLOAT16_4 R16G16B16A16_FLOAT

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

Mip

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

9_3

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_3

9_2

A16B16G16R16或D3DDECLTYPE_USHORT4N R16G16B16A16_UNORM

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

MIP_AUTOGEN

RENDER_TARGET

CPU_LOCKABLE

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_2

Q16W16V16U16或D3DDECLTYPE_SHORT4N R16G16B16A16_SNORM

IA_VERTEX_BUFFER

9_1

D3DDECLTYPE_SHORT4 R16G16B16A16_SINT

IA_VERTEX_BUFFER

9_1

G32R32F或D3DDECLTYPE_FLOAT2 R32G32_FLOAT

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

RENDER_TARGET

CPU_LOCKABLE

9_1

9_3

9_3

9_3

9_3

9_3

9_3

D3DDECLTYPE_UBYTE4 R8G8B8A8_UINT

IA_VERTEX_BUFFER

9_1

A8R8G8B8或D3DDECLTYPE_UBYTE4N R8G8B8A8_UNORM

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

DISPLAY

BACK_BUFFER_CAST

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

A8R8G8B8 R8G8B8A8_UNORM_SRGB

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

DISPLAY

BACK_BUFFER_CAST

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

Q8W8V8U8 R8G8B8A8_SNORM

TEXTURE2D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

A8R8G8B8 B8G8R8A8_UNORM

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

DISPLAY

BACK_BUFFER_CAST

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

X8R8G8B8 B8G8R8X8_UNORM

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

A8R8G8B8 B8G8R8A8_UNORM_SRGB

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

DISPLAY

BACK_BUFFER_CAST

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

X8R8G8B8 B8G8R8X8_UNORM_SRGB

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

G16R16F或D3DDECLTYPE_FLOAT16_2 R16G16_FLOAT

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

Mip

MIP_AUTOGEN

RENDER_TARGET

CPU_LOCKABLE

9_3

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_2

G16R16 或 D3DDECLTYPE_USHORT2N R16G16_UNORM

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

MIP_AUTOGEN

RENDER_TARGET

CPU_LOCKABLE

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_2

V16U16 或 D3DDECLTYPE_SHORT2N R16G16_SNORM

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

CPU_LOCKABLE

9_1

9_1

9_2

9_2

9_1

9_2

9_1

9_1

D3DDECLTYPE_SHORT2 R16G16_SINT

IA_VERTEX_BUFFER

9_1

R32F 或D3DDECLTYPE_FLOAT1 R32_FLOAT

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

Mip

MIP_AUTOGEN

RENDER_TARGET

CPU_LOCKABLE

9_1

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_2

R32_UINT

IA_INDEX_BUFFER

9_1

S8D24 或 D24S8 D24_UNORM_S8_UINT

TEXTURE2D

DEPTH_STENCIL

9_1

9_1

L16 R16_UNORM

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

CPU_LOCKABLE

9_2

9_2

9_2

9_2

9_2

9_2

9_2

R16_UINT

IA_INDEX_BUFFER

9_1

D16 或D16_LOCKABLE D16_UNORM

TEXTURE2D

DEPTH_STENCIL

9_1

9_1

V8U8 R8G8_SNORM

TEXTURE2D

SHADER_LOAD

SHADER_SAMPLE

Mip

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

L8 R8_UNORM

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

9_1

DXT1 BC1_UNORM或BC1_UNORM_SRGB

TEXTURE2D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

DXT2 BC2_UNORM或BC2_UNORM_SRGB

TEXTURE2D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

DXT4 BC3_UNORM或BC3_UNORM_SRGB

TEXTURE2D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

Mip

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

必要的D3D10_或D3D11_ FORMAT_SUPPORT_* 列舉值 Direct3D 10Level 9 中的支持演算法

BACK_BUFFER_CAST

針對支援 DISPLAY 的任何格式,假設為 true。

BLENDABLE

沒有FORMATOP_NOALPHABLEND

CPU_LOCKABLE

假設一律為 true。

DISPLAY

硬式編碼。

IA_VERTEX_BUFFER

D3DDTCAPS_* (請參閱 Note.)

Mip

無FORMATOP_NOTEXCOORDWRAPNORMIP

MIP_AUTOGEN

(請參閱注意。)

RENDER_TARGET

FORMATOP_OFFSCREEN_RENDERTARGET

SHADER_LOAD

假設為所有非深度格式。

SHADER_SAMPLE

(請參閱注意。)

TEXTURE2D

FORMATOP_TEXTURE

TEXTURE3D

FORMATOP_VOLUMETEXTURE

TEXTURECUBE

FORMATOP_CUBETEXTURE

注意 以下是 Direct3D 10Level 9 中支援演算法需求的進一步詳細資料:

  • 如果沒有D3DDEVCAPS_HWTRANSFORMANDLIGHT功能,軟體頂點處理支援IA_VERTEX_BUFFER和/或IA_INDEX_BUFFER格式。
  • TEXTURE2D格式也可以從其推斷為深度樣板格式。
  • 針對SHADER_SAMPLE格式,驅動程式必須支援FORMATOP_TEXTURE、FORMATOP_VOLUMETEXTURE或FORMATOP_CUBETEXTURE,而且不能報告FORMATOP_NOFILTER。
  • 針對MIP_AUTOGEN格式,Direct3D 10Level 9 會產生自己的 mip 對應,因此需要 MIP、RENDER_TARGET和TEXTURE2D位。