DDS_HEADER Struktur
Beschreibt einen DDS-Dateiheader.
Syntax
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;
Member
-
dwSize
-
Typ: DWORD
-
Größe der Struktur. Dieses Element muss auf 124 festgelegt werden.
-
dwFlags
-
Typ: DWORD
-
Flags, um anzugeben, welche Member gültige Daten enthalten.
Flag Beschreibung Wert DDSD_CAPS Erforderlich in jeder DDS-Datei. 0x1 DDSD_HEIGHT Erforderlich in jeder DDS-Datei. 0x2 DDSD_WIDTH Erforderlich in jeder DDS-Datei. 0x4 DDSD_PITCH Erforderlich, wenn die Tonhöhe für eine nicht komprimierte Textur bereitgestellt wird. 0x8 DDSD_PIXELFORMAT Erforderlich in jeder DDS-Datei. 0x1000 DDSD_MIPMAPCOUNT Erforderlich in einer mipmapped-Textur. 0x20000 DDSD_LINEARSIZE Erforderlich, wenn die Tonhöhe für eine komprimierte Textur bereitgestellt wird. 0x80000 DDSD_DEPTH Erforderlich in einer Tiefentextur. 0x800000 Hinweis
Wenn Sie DDS-Dateien schreiben, sollten Sie die DDSD_CAPS- und DDSD_PIXELFORMAT-Flags festlegen, und für mipmapped-Texturen sollten Sie auch das DDSD_MIPMAPCOUNT-Flag festlegen. Wenn Sie jedoch eine DDS-Datei lesen, sollten Sie sich nicht darauf verlassen, dass die DDSD_CAPS, DDSD_PIXELFORMAT und DDSD_MIPMAPCOUNT-Flags festgelegt werden, da einige Autoren einer solchen Datei diese Flags möglicherweise nicht festlegen.
Das in Dds.h definierte DDS_HEADER_FLAGS_TEXTURE-Flag ist eine bitweise OR-Kombination aus den DDSD_CAPS-, DDSD_HEIGHT-, DDSD_WIDTH- und DDSD_PIXELFORMAT-Flags.
Das in Dds.h definierte DDS_HEADER_FLAGS_MIPMAP-Flag entspricht dem DDSD_MIPMAPCOUNT-Flag.
Das in Dds.h definierte DDS_HEADER_FLAGS_VOLUME-Flag entspricht dem DDSD_DEPTH Flag.
Das in Dds.h definierte DDS_HEADER_FLAGS_PITCH-Flag entspricht dem DDSD_PITCH-Flag.
Das in Dds.h definierte DDS_HEADER_FLAGS_LINEARSIZE-Flag entspricht dem DDSD_LINEARSIZE-Flag.
-
dwHeight
-
Typ: DWORD
-
Oberflächenhöhe (in Pixel).
-
dwWidth
-
Typ: DWORD
-
Breite der Oberfläche (in Pixel).
-
dwPitchOrLinearSize
-
Typ: DWORD
-
Die Tonhöhe oder Anzahl von Bytes pro Scanzeile in einer nicht komprimierten Textur; die Gesamtanzahl von Bytes in der Textur der obersten Ebene für eine komprimierte Textur. Informationen zum Berechnen der Tonhöhe finden Sie im Abschnitt DDS-Dateilayout des Programmierhandbuchs für DDS.
-
dwDepth
-
Typ: DWORD
-
Tiefe einer Volumetextur (in Pixel), andernfalls nicht verwendet.
-
dwMipMapCount
-
Typ: DWORD
-
Anzahl der mipmap-Ebenen, andernfalls nicht verwendet.
-
dwReserved1[11]
-
Typ: DWORD
-
Nicht verwendet.
-
ddspf
-
Typ: DDS_PIXELFORMAT
-
Das Pixelformat (siehe DDS_PIXELFORMAT).
-
dwCaps
-
Typ: DWORD
-
Gibt die Komplexität der gespeicherten Oberflächen an.
Flag Beschreibung Wert DDSCAPS_COMPLEX Optional; muss für jede Datei verwendet werden, die mehr als eine Oberfläche enthält (eine mipmap, eine kubische Umgebungszuordnung oder eine Mipmapped-Volumetextur). 0x8 DDSCAPS_MIPMAP Optional; sollte für eine mipmap verwendet werden. 0x400000 DDSCAPS_TEXTURE Erforderlich 0x1000 Hinweis
Wenn Sie DDS-Dateien schreiben, sollten Sie das DDSCAPS_TEXTURE-Flag festlegen, und für mehrere Oberflächen sollten Sie auch das DDSCAPS_COMPLEX-Flag festlegen. Wenn Sie jedoch eine DDS-Datei lesen, sollten Sie sich nicht darauf verlassen, dass die DDSCAPS_TEXTURE und DDSCAPS_COMPLEX Flags festgelegt werden, da einige Autoren einer solchen Datei diese Flags möglicherweise nicht festlegen.
Das in Dds.h definierte DDS_SURFACE_FLAGS_MIPMAP-Flag ist eine bitweise OR-Kombination aus den DDSCAPS_COMPLEX- und DDSCAPS_MIPMAP-Flags.
Das in Dds.h definierte DDS_SURFACE_FLAGS_TEXTURE-Flag entspricht dem DDSCAPS_TEXTURE-Flag.
Das in Dds.h definierte DDS_SURFACE_FLAGS_CUBEMAP-Flag entspricht dem DDSCAPS_COMPLEX-Flag.
-
dwCaps2
-
Typ: DWORD
-
Zusätzliche Details zu den gespeicherten Oberflächen.
Flag Beschreibung Wert DDSCAPS2_CUBEMAP Erforderlich für eine Cubezuordnung. 0x200 DDSCAPS2_CUBEMAP_POSITIVEX Erforderlich, wenn diese Oberflächen in einer Cubezuordnung gespeichert werden. 0x400 DDSCAPS2_CUBEMAP_NEGATIVEX Erforderlich, wenn diese Oberflächen in einer Cubezuordnung gespeichert werden. 0x800 DDSCAPS2_CUBEMAP_POSITIVEY Erforderlich, wenn diese Oberflächen in einer Cubezuordnung gespeichert werden. 0x1000 DDSCAPS2_CUBEMAP_NEGATIVEY Erforderlich, wenn diese Oberflächen in einer Cubezuordnung gespeichert werden. 0x2000 DDSCAPS2_CUBEMAP_POSITIVEZ Erforderlich, wenn diese Oberflächen in einer Cubezuordnung gespeichert werden. 0x4000 DDSCAPS2_CUBEMAP_NEGATIVEZ Erforderlich, wenn diese Oberflächen in einer Cubezuordnung gespeichert werden. 0x8000 DDSCAPS2_VOLUME Erforderlich für eine Volumetextur. 0x200000 Das in Dds.h definierte DDS_CUBEMAP_POSITIVEX-Flag ist eine bitweise OR-Kombination aus den DDSCAPS2_CUBEMAP- und DDSCAPS2_CUBEMAP_POSITIVEX-Flags.
Das in Dds.h definierte DDS_CUBEMAP_NEGATIVEX-Flag ist eine bitweise OR-Kombination aus den DDSCAPS2_CUBEMAP- und DDSCAPS2_CUBEMAP_NEGATIVEX-Flags.
Das in Dds.h definierte DDS_CUBEMAP_POSITIVEY-Flag ist eine bitweise OR-Kombination aus den DDSCAPS2_CUBEMAP- und DDSCAPS2_CUBEMAP_POSITIVEY-Flags.
Das in Dds.h definierte DDS_CUBEMAP_NEGATIVEY-Flag ist eine bitweise OR-Kombination aus den DDSCAPS2_CUBEMAP- und DDSCAPS2_CUBEMAP_NEGATIVEY-Flags.
Das in Dds.h definierte DDS_CUBEMAP_POSITIVEZ-Flag ist eine bitweise OR-Kombination aus den DDSCAPS2_CUBEMAP- und DDSCAPS2_CUBEMAP_POSITIVEZ-Flags.
Das in Dds.h definierte DDS_CUBEMAP_NEGATIVEZ-Flag ist eine bitweise OR-Kombination aus den DDSCAPS2_CUBEMAP- und DDSCAPS2_CUBEMAP_NEGATIVEZ-Flags.
Das in Dds.h definierte DDS_CUBEMAP_ALLFACES-Flag ist eine bitweise OR-Kombination aus den Flags DDS_CUBEMAP_POSITIVEX, DDS_CUBEMAP_NEGATIVEX, DDS_CUBEMAP_POSITIVEY, DDS_CUBEMAP_NEGATIVEY, DDS_CUBEMAP_POSITIVEZ und DDSCAPS2_CUBEMAP_NEGATIVEZ.
Das in Dds.h definierte DDS_FLAGS_VOLUME-Flag entspricht dem DDSCAPS2_VOLUME-Flag.
Hinweis
Obwohl Direct3D 9 partielle Cubezuordnungen unterstützt, erfordern Direct3D 10, 10.1 und 11, dass Sie alle sechs Cubezuordnungsflächen definieren (d. h. Sie müssen DDS_CUBEMAP_ALLFACES festlegen).
-
dwCaps3
-
Typ: DWORD
-
Nicht verwendet.
-
dwCaps4
-
Typ: DWORD
-
Nicht verwendet.
-
dwReserved2
-
Typ: DWORD
-
Nicht verwendet.
Bemerkungen
Schließen Sie Flags in dwFlags für die Member der Struktur ein, die gültige Daten enthalten.
Verwenden Sie diese Struktur in Kombination mit einem DDS_HEADER_DXT10 , um ein Ressourcenarray in einer DDS-Datei zu speichern. Weitere Informationen finden Sie unter Texturarrays.
DDS_HEADER ist mit der DirectDraw DDSURFACEDESC2-Struktur ohne DirectDraw-Abhängigkeiten identisch.
Anforderungen
Anforderung | Wert |
---|---|
Header |
|