Formati DXGI obbligatori
Questo argomento presenta i requisiti applicati ai livelli di funzionalità di Microsoft Direct3D nel driver di visualizzazione in modalità utente.
La prima e la seconda colonna della prima tabella mostrano tutti i tipi di formato Direct3D che il driver deve supportare. La terza colonna mostra tutti i valori costanti associati delle enumerazioni direct3D D3D10_FORMAT_SUPPORT e/o D3D11_FORMAT_SUPPORT che il driver deve supportare. La quarta colonna mostra il livello minimo di funzionalità Direct3D a cui il driver deve supportare ogni formato.
La seconda tabella mostra l'algoritmo di supporto Direct3D 10Level 9 per ogni valore di enumerazione.
Formato D3D9 (D3DDDIFMT_* e/o D3DDECLTYPE | Equivalente api D3D10 + (DXGI_FORMAT_) | Valori di enumerazione obbligatori D3D10_ o D3D11_ FORMAT_SUPPORT_* | Livello Direct3D minimo richiesto |
---|---|---|---|
A32B32G32R32F o 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 o 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 o 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 o D3DDECLTYPE_SHORT4N | R16G16B16A16_SNORM | IA_VERTEX_BUFFER |
9_1 |
D3DDECLTYPE_SHORT4 | R16G16B16A16_SINT | IA_VERTEX_BUFFER |
9_1 |
G32R32F o 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 o D3DDECLTYPE_UBYTE4N | R8G8B8A8_UNORM | IA_VERTEX_BUFFER TEXTURE2D TEXTURE3D TEXTURECUBE SHADER_LOAD SHADER_SAMPLE MIP MIP_AUTOGEN RENDER_TARGET BLENDABLE CPU_LOCKABLE VISUALIZZAZIONE 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 VISUALIZZAZIONE 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 VISUALIZZAZIONE 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 VISUALIZZAZIONE 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 o 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 o 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 o 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 o 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 o 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 o 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 o 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 o 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 o BC3_UNORM_SRGB | TEXTURE2D TEXTURECUBE SHADER_LOAD SHADER_SAMPLE MIP CPU_LOCKABLE |
9_1 9_1 9_1 9_1 9_1 9_1 |
Valori di enumerazione necessari D3D10_ o D3D11_ FORMAT_SUPPORT_* | Algoritmo di supporto in Direct3D 10Level 9 |
---|---|
BACK_BUFFER_CAST |
Si presuppone true per qualsiasi formato che supporta DISPLAY. |
BLENDABLE |
Nessun FORMATOP_NOALPHABLEND |
CPU_LOCKABLE |
Assunto sempre vero. |
VISUALIZZAZIONE |
Hardcoded. |
IA_VERTEX_BUFFER |
D3DDTCAPS_* (vedere Nota). |
MIP |
Nessun FORMATOP_NOTEXCOORDWRAPNORMIP |
MIP_AUTOGEN |
(vedere la nota). |
RENDER_TARGET |
FORMATOP_OFFSCREEN_RENDERTARGET |
SHADER_LOAD |
Assunto per tutti i formati non profondi. |
SHADER_SAMPLE |
(vedere la nota). |
TEXTURE2D |
FORMATOP_TEXTURE |
TEXTURE3D |
FORMATOP_VOLUMETEXTURE |
TEXTURECUBE |
FORMATOP_CUBETEXTURE |
Nota Questi sono altri dettagli sui requisiti dell'algoritmo di supporto in Direct3D 10Level 9:
- I formati IA_VERTEX_BUFFER e/o IA_INDEX_BUFFER sono supportati dall'elaborazione dei vertici software se non è disponibile alcuna funzionalità di D3DDEVCAPS_HWTRANSFORMANDLIGHT.
- Il formato TEXTURE2D può anche essere dedotto dal formato profondità-stencil.
- Per il formato SHADER_SAMPLE, il driver deve supportare FORMATOP_TEXTURE, FORMATOP_VOLUMETEXTURE o FORMATOP_CUBETEXTURE e non deve segnalare FORMATOP_NOFILTER.
- Per il formato MIP_AUTOGEN, Direct3D 10Level 9 genera le proprie mappe mip, quindi richiede MIP, RENDER_TARGET e TEXTURE2D bit.