Freigeben über


Beispiel für DDS-Textur

Verwenden Sie für eine nicht komprimierte Textur die kennzeichnungen DDSD_PITCH und DDPF_RGB; verwenden Sie für eine komprimierte Textur die Kennzeichnungen DDSD_LINEARSIZE und DDPF_FOURCC. Verwenden Sie für eine Mipmappentextur auch die DDSD_MIPMAPCOUNT, DDSCAPS_MIPMAP und DDSCAPS_COMPLEX Flags sowie das Mipmap-Count-Element. Wenn Mipmaps generiert werden, werden in der Regel alle Ebenen bis 1:1 geschrieben.

Bei einer komprimierten Textur beträgt die Größe jedes Bilds auf Mipmap-Ebene in der Regel ein Viertel der vorherigen Größe, wobei mindestens 8 (DXT1) oder 16 (DXT2-5) Bytes (für quadratische Texturen) vorhanden sind. Verwenden Sie die folgende Formel, um die Größe jeder Ebene für eine nicht quadratische Textur zu berechnen:

max(1, ( (width + 3) / 4 ) ) x max(1, ( (height + 3) / 4 ) ) x 8(DXT1) or 16(DXT2-5)

In dieser Tabelle wird der von jeder Ebene belegte Speicherplatz für eine Textur von 256 x 256 R8G8B8 ohne Komprimierung aufgelistet.

DDS-Komponenten # Bytes
Kopfball 128
Hauptbild von 256 bis 256 196608
128-by-128 mipmap image 49152
64-by-64 mipmap-Bild 12288
32-mal-32 mipmap-Bild 3072
16-mal-16 mipmap-Bild 768
8:8 mipmap-Bild 192
4:4 mipmap-Bild 48
2:2 mipmap-Bild 12
1:1 mipmap-Bild 3

 

In dieser Tabelle wird der Speicherplatz aufgelistet, der von jeder Ebene für dieselbe Textur mit Komprimierung (DXT1) belegt wurde.

DDS-Komponenten # Bytes
Kopfball 128
Hauptbild von 256 bis 64 8192
128-mal-32 mipmap-Bild 2048
64-by-16 mipmap-Bild 512
32-by-8 mipmap-Bild 128
16-by-4-mipmap-Bild 32
8:2 mipmap-Bild 16
4:1 mipmap-Bild 8
2:1 mipmap-Bild 8
1:1 mipmap-Bild 8

 

In dieser Tabelle wird der von jeder Ebene für dieselbe Textur belegte Speicherplatz mit einem DXGI-Komprimierungsformat (in diesem Fall BC3_UNORM) aufgelistet, der daher den erweiterten Header erfordert:

DDS-Komponenten # Bytes
header (FourCC set to "DX10") 128
erweiterter Header (DXGI-Format auf DXGI_FORMAT_BC3_UNORM festgelegt) 20
Hauptbild von 256 bis 64 16384
128-mal-32 mipmap-Bild 4096
64-by-16 mipmap-Bild 1024
32-by-8 mipmap-Bild 256
16-by-4-mipmap-Bild 64
8:2 mipmap-Bild 32
4:1 mipmap-Bild 16
2:1 mipmap-Bild 16
1:1 mipmap-Bild 16

 

Programmierhandbuch für DDS-