Compresión de bloques de textura en Direct3D 11
La compatibilidad con compresión de bloques (BC) para texturas se ha ampliado en Direct3D 11 para incluir los algoritmos BC6H y BC7. BC6H admite datos de origen de color de rango alto dinámico y BC7 proporciona una compresión de calidad superior a la media con menos artefactos para datos de origen RGB estándar.
Para obtener información más específica sobre la compatibilidad del algoritmo de compresión de bloques antes de Direct3D 11, incluida la compatibilidad con los formatos BC1 a BC5, consulte Compresión de bloques (Direct3D 10).
Nota sobre los formatos de archivo: Los formatos de compresión de textura BC6H y BC7 usan el formato de archivo DDS para almacenar los datos de textura comprimidos. Para obtener más información, consulte la Guía de programación para DDS para obtener más información.
Formatos de compresión de bloques admitidos en Direct3D 11
Datos de origen | Resolución de compresión de datos mínima necesaria | Formato recomendado | Nivel de característica mínimo admitido |
---|---|---|---|
Color de tres canales con canal alfa | Tres canales de color (5 bits:6 bits:5 bits), con 0 o 1 bits de alfa | BC1 | Direct3D 9.1 |
Color de tres canales con canal alfa | Tres canales de color (5 bits:6 bits:5 bits), con 4 bits de alfa | BC2 | Direct3D 9.1 |
Color de tres canales con canal alfa | Tres canales de color (5 bits:6 bits:5 bits) con 8 bits de alfa | BC3 | Direct3D 9.1 |
Color de un canal | Un canal de color (8 bits) | BC4 | Direct3D 10 |
Color de dos canales | Dos canales de color (8 bits:8 bits) | BC5 | Direct3D 10 |
Color de alto rango dinámico de tres canales (HDR) | Tres canales de color (16 bits:16 bits:16 bits) en punto flotante "medio" * | BC6H | Direct3D 11 |
Color de tres canales, canal alfa opcional | Tres canales de color (de 4 a 7 bits por canal) con 0 a 8 bits de alfa | BC7 | Direct3D 11 |
*"Half" punto flotante es un valor de 16 bits que consta de un bit de signo opcional, un exponente sesgado de 5 bits y una mantisa de 10 o 11 bits.
Formatos BC1, BC2 y B3
Los formatos BC1, BC2 y BC3 son equivalentes a los formatos de compresión de textura DXTn de Direct3D 9 y son los mismos que los formatos correspondientes de Direct3D 10 BC1, BC2 y BC3. Todos los niveles de características (D3D_FEATURE_LEVEL_9_1, D3D_FEATURE_LEVEL_9_2, D3D_FEATURE_LEVEL_9_3, D3D_FEATURE_LEVEL_10_0, D3D_FEATURE_LEVEL_10_0, D3D_FEATURE_LEVEL_10_1 y D3D_FEATURE_LEVEL_11_0 requieren compatibilidad con estos tres formatos).
Formato de compresión de bloques | Formato DXGI | Formato equivalente de Direct3D 9 | Bytes por bloque de 4 x 4 píxeles |
---|---|---|---|
BC1 | DXGI_FORMAT_BC1_UNORM, DXGI_FORMAT_BC1_UNORM_SRGB, DXGI_FORMAT_BC1_TYPELESS | D3DFMT_DXT1, FourCC="DXT1" | 8 |
BC2 | DXGI_FORMAT_BC2_UNORM, DXGI_FORMAT_BC2_UNORM_SRGB, DXGI_FORMAT_BC2_TYPELESS | D3DFMT_DXT2*, FourCC="DXT2", D3DFMT_DXT3, FourCC="DXT3" | 16 |
BC3 | DXGI_FORMAT_BC3_UNORM, DXGI_FORMAT_BC3_UNORM_SRGB, DXGI_FORMAT_BC3_TYPELESS | D3DFMT_DXT4*, FourCC="DXT4", D3DFMT_DXT5, FourCC="DXT5" | 16 |
*Estos esquemas de compresión (DXT2 y DXT4) no distinguen entre los formatos alfa multiplicados previamente de Direct3D 9 y los formatos alfa estándar. Esta distinción debe controlarse mediante los sombreadores programables en tiempo de representación.
Formatos BC4 y BC5
Formato de compresión de bloques | Formato DXGI | Formato equivalente de Direct3D 9 | Bytes por bloque de 4 x 4 píxeles |
---|---|---|---|
BC4 | DXGI_FORMAT_BC4_UNORM, DXGI_FORMAT_BC4_SNORM, DXGI_FORMAT_BC4_TYPELESS | FourCC="ATI1" | 8 |
BC5 | DXGI_FORMAT_BC5_UNORM, DXGI_FORMAT_BC5_SNORM, DXGI_FORMAT_BC5_TYPELESS | FourCC="ATI2" | 16 |
Formato BC6H
Para obtener información más detallada sobre este formato, consulte la documentación del formato BC6H .
Formato de compresión de bloques | Formato DXGI | Formato equivalente de Direct3D 9 | Bytes por bloque de 4 x 4 píxeles |
---|---|---|---|
BC6H | DXGI_FORMAT_BC6H_UF16, DXGI_FORMAT_BC6H_SF16, DXGI_FORMAT_BC6H_TYPELESS | N/D | 16 |
El formato BC6H puede seleccionar diferentes modos de codificación para cada bloque de 4 x 4 píxeles. Hay disponibles un total de 14 modos de codificación diferentes, cada uno con ventajas ligeramente diferentes en la calidad visual resultante de la textura mostrada. La elección de modos permite descodificar rápidamente el hardware con el nivel de calidad seleccionado o adaptado según el contenido de origen, pero también aumenta considerablemente la complejidad del espacio de búsqueda.
Formato BC7
Para obtener información más detallada sobre este formato, consulte la documentación del formato BC7 .
Formato de compresión de bloques | Formato DXGI | Formato equivalente de Direct3D 9 | Bytes por bloque de 4 x 4 píxeles |
---|---|---|---|
BC7 | DXGI_FORMAT_BC7_UNORM, DXGI_FORMAT_BC7_UNORM_SRGB, DXGI_FORMAT_BC7_TYPELESS | N/D | 16 |
El formato BC7 puede seleccionar diferentes modos de codificación para cada bloque de 4 x 4 píxeles. Hay disponibles un total de 8 modos de codificación diferentes, cada uno con equilibrios ligeramente diferentes en la calidad visual resultante de la textura mostrada. La elección de modos permite descodificar rápidamente el hardware con el nivel de calidad seleccionado o adaptado según el contenido de origen, pero también aumenta considerablemente la complejidad del espacio de búsqueda.
En esta sección
Tema | Descripción |
---|---|
Formato BC6H |
El formato BC6H es un formato de compresión de textura diseñado para admitir espacios de color de rango dinámico alto (HDR) en los datos de origen. |
Formato BC7 |
El formato BC7 es un formato de compresión de textura utilizado para la compresión de alta calidad de los datos RGB y RGBA. |
Referencia del modo de formato BC7 |
Esta documentación contiene una lista de los 8 modos de bloque y asignaciones de bits para bloques de formato de compresión de textura BC7. |