Formats DXGI requis
Cette rubrique présente les exigences que les niveaux de fonctionnalités De Microsoft Direct3D placent sur le pilote d’affichage en mode utilisateur.
Les première et deuxième colonnes de la première table affichent tous les types de format Direct3D que le pilote doit prendre en charge. La troisième colonne affiche toutes les valeurs constantes associées du D3D10_FORMAT_SUPPORT Direct3D et/ou des énumérations D3D11_FORMAT_SUPPORT que le pilote doit prendre en charge. La quatrième colonne indique le niveau de fonctionnalité Direct3D minimal auquel le pilote doit prendre en charge chaque format.
Le deuxième tableau montre l’algorithme de prise en charge de Direct3D 10Level 9 pour chaque valeur d’énumération.
Format D3D9 (D3DDDIFMT_* et/ou D3DDECLTYPE | Équivalent de l’API D3D10+ (DXGI_FORMAT_) | Valeurs d’énumération D3D10_ ou D3D11_ FORMAT_SUPPORT_* requises | Niveau Direct3D minimum requis |
---|---|---|---|
A32B32G32R32F ou 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 ou 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 ou 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 ou D3DDECLTYPE_SHORT4N | R16G16B16A16_SNORM | IA_VERTEX_BUFFER |
9_1 |
D3DDECLTYPE_SHORT4 | R16G16B16A16_SINT | IA_VERTEX_BUFFER |
9_1 |
G32R32F ou 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 ou 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 ou 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 ou 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 ou 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 ou 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 ou 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 ou 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 ou 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 ou 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 ou BC3_UNORM_SRGB | TEXTURE2D TEXTURECUBE SHADER_LOAD SHADER_SAMPLE MIP CPU_LOCKABLE |
9_1 9_1 9_1 9_1 9_1 9_1 |
Valeurs d’énumération D3D10_ ou D3D11_ FORMAT_SUPPORT_* requises | Algorithme de prise en charge dans Direct3D 10Level 9 |
---|---|
BACK_BUFFER_CAST |
True pour n’importe quel format qui prend en charge DISPLAY. |
BLENDABLE |
Aucune FORMATOP_NOALPHABLEND |
CPU_LOCKABLE |
Toujours vrai. |
DISPLAY |
Codé en dur. |
IA_VERTEX_BUFFER |
D3DDTCAPS_* (Voir remarque.) |
MIP |
Aucune FORMATOP_NOTEXCOORDWRAPNORMIP |
MIP_AUTOGEN |
(Voir la remarque ci-dessous.) |
RENDER_TARGET |
FORMATOP_OFFSCREEN_RENDERTARGET |
SHADER_LOAD |
Pris en charge pour tous les formats sans profondeur. |
SHADER_SAMPLE |
(Voir la remarque ci-dessous.) |
TEXTURE2D |
FORMATOP_TEXTURE |
TEXTURE3D |
FORMATOP_VOLUMETEXTURE |
TEXTURECUBE |
FORMATOP_CUBETEXTURE |
Note Voici d’autres détails sur les exigences de l’algorithme de prise en charge dans Direct3D 10Level 9 :
- Les formats IA_VERTEX_BUFFER et/ou IA_INDEX_BUFFER sont pris en charge par le traitement du vertex logiciel s’il n’existe aucune fonctionnalité D3DDEVCAPS_HWTRANSFORMANDLIGHT.
- Le format TEXTURE2D peut également être déduit du fait qu’il s’agit d’un format de gabarit de profondeur.
- Pour le format SHADER_SAMPLE, le pilote doit prendre en charge FORMATOP_TEXTURE, FORMATOP_VOLUMETEXTURE ou FORMATOP_CUBETEXTURE, et il ne doit pas signaler de FORMATOP_NOFILTER.
- Pour le format MIP_AUTOGEN, Direct3D 10Level 9 génère ses propres mip-maps. Il nécessite donc MIP, RENDER_TARGET et TEXTURE2D bits.