estructura de DDS_HEADER
Describe un encabezado de archivo DDS.
Sintaxis
typedef struct {
DWORD dwSize;
DWORD dwFlags;
DWORD dwHeight;
DWORD dwWidth;
DWORD dwPitchOrLinearSize;
DWORD dwDepth;
DWORD dwMipMapCount;
DWORD dwReserved1[11];
DDS_PIXELFORMAT ddspf;
DWORD dwCaps;
DWORD dwCaps2;
DWORD dwCaps3;
DWORD dwCaps4;
DWORD dwReserved2;
} DDS_HEADER;
Miembros
-
dwSize
-
Tipo: DWORD
-
Tamaño de la estructura. Este miembro debe establecerse en 124.
-
dwFlags
-
Tipo: DWORD
-
Marcas para indicar qué miembros contienen datos válidos.
Marca Descripción Valor DDSD_CAPS Obligatorio en cada archivo .dds. 0x1 DDSD_HEIGHT Obligatorio en cada archivo .dds. 0x2 DDSD_WIDTH Obligatorio en cada archivo .dds. 0x4 DDSD_PITCH Obligatorio cuando se proporciona un tono para una textura sin comprimir. 0x8 DDSD_PIXELFORMAT Obligatorio en cada archivo .dds. 0x1000 DDSD_MIPMAPCOUNT Obligatorio en una textura mipmapped. 0x20000 DDSD_LINEARSIZE Obligatorio cuando se proporciona un tono para una textura comprimida. 0x80000 DDSD_DEPTH Se requiere en una textura de profundidad. 0x800000 Nota
Al escribir archivos .dds, debe establecer las marcas de DDSD_CAPS y DDSD_PIXELFORMAT y, para las texturas mipmapped, también debe establecer la marca de DDSD_MIPMAPCOUNT. Sin embargo, al leer un archivo .dds, no debe confiar en el DDSD_CAPS, DDSD_PIXELFORMAT y DDSD_MIPMAPCOUNT marcas que se establecen porque es posible que algunos escritores de este archivo no establezcan estas marcas.
La marca DDS_HEADER_FLAGS_TEXTURE, que se define en Dds.h, es una combinación or bit a bit de las marcas de DDSD_CAPS, DDSD_HEIGHT, DDSD_WIDTH y DDSD_PIXELFORMAT.
La marca DDS_HEADER_FLAGS_MIPMAP, que se define en Dds.h, es igual a la marca DDSD_MIPMAPCOUNT.
La marca DDS_HEADER_FLAGS_VOLUME, que se define en Dds.h, es igual a la marca DDSD_DEPTH.
La marca DDS_HEADER_FLAGS_PITCH, que se define en Dds.h, es igual a la marca DDSD_PITCH.
La marca DDS_HEADER_FLAGS_LINEARSIZE, que se define en Dds.h, es igual a la marca DDSD_LINEARSIZE.
-
dwHeight
-
Tipo: DWORD
-
Alto de la superficie (en píxeles).
-
dwWidth
-
Tipo: DWORD
-
Ancho de superficie (en píxeles).
-
dwPitchOrLinearSize
-
Tipo: DWORD
-
Tono o número de bytes por línea de examen en una textura sin comprimir; número total de bytes en la textura de nivel superior para una textura comprimida. Para obtener información sobre cómo calcular el tono, vea la sección Diseño de archivo DDS de la Guía de programación para DDS.
-
dwDepth
-
Tipo: DWORD
-
Profundidad de una textura de volumen (en píxeles), en caso contrario, sin usar.
-
dwMipMapCount
-
Tipo: DWORD
-
Número de niveles de mapa mip; de lo contrario, no se ha usado.
-
dwReserved1[11]
-
Tipo: DWORD
-
Sin usar.
-
ddspf
-
Tipo: DDS_PIXELFORMAT
-
Formato de píxel (vea DDS_PIXELFORMAT).
-
dwCaps
-
Tipo: DWORD
-
Especifica la complejidad de las superficies almacenadas.
Marca Descripción Valor DDSCAPS_COMPLEX Opcional; debe usarse en cualquier archivo que contenga más de una superficie (un mapa mip, un mapa de entorno cúbico o una textura de volumen mipmapped). 0x8 DDSCAPS_MIPMAP Opcional; se debe usar para un mapa mip. 0x400000 DDSCAPS_TEXTURE Obligatorio 0x1000 Nota
Al escribir archivos .dds, debe establecer la marca DDSCAPS_TEXTURE y, para varias superficies, también debe establecer la marca DDSCAPS_COMPLEX. Sin embargo, al leer un archivo .dds, no debe confiar en el DDSCAPS_TEXTURE y DDSCAPS_COMPLEX marcas que se establecen porque es posible que algunos escritores de este archivo no establezcan estas marcas.
La marca DDS_SURFACE_FLAGS_MIPMAP, que se define en Dds.h, es una combinación OR bit a bit de las marcas de DDSCAPS_COMPLEX y DDSCAPS_MIPMAP.
La marca DDS_SURFACE_FLAGS_TEXTURE, que se define en Dds.h, es igual a la marca DDSCAPS_TEXTURE.
La marca DDS_SURFACE_FLAGS_CUBEMAP, que se define en Dds.h, es igual a la marca DDSCAPS_COMPLEX.
-
dwCaps2
-
Tipo: DWORD
-
Detalles adicionales sobre las superficies almacenadas.
Marca Descripción Valor DDSCAPS2_CUBEMAP Necesario para un mapa de cubo. 0x200 DDSCAPS2_CUBEMAP_POSITIVEX Se requiere cuando estas superficies se almacenan en un mapa de cubo. 0x400 DDSCAPS2_CUBEMAP_NEGATIVEX Se requiere cuando estas superficies se almacenan en un mapa de cubo. 0x800 DDSCAPS2_CUBEMAP_POSITIVEY Se requiere cuando estas superficies se almacenan en un mapa de cubo. 0x1000 DDSCAPS2_CUBEMAP_NEGATIVEY Se requiere cuando estas superficies se almacenan en un mapa de cubo. 0x2000 DDSCAPS2_CUBEMAP_POSITIVEZ Se requiere cuando estas superficies se almacenan en un mapa de cubo. 0x4000 DDSCAPS2_CUBEMAP_NEGATIVEZ Se requiere cuando estas superficies se almacenan en un mapa de cubo. 0x8000 DDSCAPS2_VOLUME Necesario para una textura de volumen. 0x200000 La marca DDS_CUBEMAP_POSITIVEX, que se define en Dds.h, es una combinación or bit a bit de las marcas DDSCAPS2_CUBEMAP y DDSCAPS2_CUBEMAP_POSITIVEX.
La marca DDS_CUBEMAP_NEGATIVEX, que se define en Dds.h, es una combinación or bit a bit de las marcas DDSCAPS2_CUBEMAP y DDSCAPS2_CUBEMAP_NEGATIVEX.
La marca DDS_CUBEMAP_POSITIVEY, que se define en Dds.h, es una combinación or bit a bit de las marcas DDSCAPS2_CUBEMAP y DDSCAPS2_CUBEMAP_POSITIVEY.
La marca DDS_CUBEMAP_NEGATIVEY, que se define en Dds.h, es una combinación or bit a bit de las marcas DDSCAPS2_CUBEMAP y DDSCAPS2_CUBEMAP_NEGATIVEY.
La marca DDS_CUBEMAP_POSITIVEZ, que se define en Dds.h, es una combinación or bit a bit de las marcas de DDSCAPS2_CUBEMAP y DDSCAPS2_CUBEMAP_POSITIVEZ.
La marca DDS_CUBEMAP_NEGATIVEZ, que se define en Dds.h, es una combinación or bit a bit de las marcas DDSCAPS2_CUBEMAP y DDSCAPS2_CUBEMAP_NEGATIVEZ.
La marca DDS_CUBEMAP_ALLFACES, que se define en Dds.h, es una combinación or bit a bit de las marcas de DDS_CUBEMAP_POSITIVEX, DDS_CUBEMAP_NEGATIVEX, DDS_CUBEMAP_POSITIVEY, DDS_CUBEMAP_NEGATIVEY, DDS_CUBEMAP_POSITIVEZ y DDSCAPS2_CUBEMAP_NEGATIVEZ.
La marca DDS_FLAGS_VOLUME, que se define en Dds.h, es igual a la marca DDSCAPS2_VOLUME.
Nota
Aunque Direct3D 9 admite mapas de cubo parciales, Direct3D 10, 10.1 y 11 requieren que definas las seis caras de mapa de cubo (es decir, debes establecer DDS_CUBEMAP_ALLFACES).
-
dwCaps3
-
Tipo: DWORD
-
Sin usar.
-
dwCaps4
-
Tipo: DWORD
-
Sin usar.
-
dwReserved2
-
Tipo: DWORD
-
Sin usar.
Comentarios
Incluya marcas en dwFlags para los miembros de la estructura que contienen datos válidos.
Use esta estructura en combinación con un DDS_HEADER_DXT10 para almacenar una matriz de recursos en un archivo DDS. Para obtener más información, consulte matrices de texturas.
DDS_HEADER es idéntico a la estructura DDSURFACEDESC2 de DirectDraw sin dependencias de DirectDraw.
Requisitos
Requisito | Value |
---|---|
Encabezado |
|