DDS_HEADER 구조체
DDS 파일 헤더에 대해 설명합니다.
구문
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;
멤버
-
dwSize
-
형식: DWORD
-
구조체의 크기입니다. 이 멤버는 124로 설정해야 합니다.
-
dwFlags
-
형식: DWORD
-
유효한 데이터가 포함된 멤버를 나타내는 플래그입니다.
플래그 설명 값 DDSD_CAPS 모든 .dds 파일에 필요합니다. 0x1 DDSD_HEIGHT 모든 .dds 파일에 필요합니다. 0x2 DDSD_WIDTH 모든 .dds 파일에 필요합니다. 0x4 DDSD_PITCH 압축되지 않은 텍스처에 대해 피치가 제공될 때 필요합니다. 0x8 DDSD_PIXELFORMAT 모든 .dds 파일에 필요합니다. 0x1000 DDSD_MIPMAPCOUNT mipmapped 텍스처에 필요합니다. 0x20000 DDSD_LINEARSIZE 압축된 텍스처에 피치가 제공될 때 필요합니다. 0x80000 DDSD_DEPTH 깊이 텍스처에 필요합니다. 0x800000 참고
.dds 파일을 작성할 때는 DDSD_CAPS 및 DDSD_PIXELFORMAT 플래그를 설정해야 하며 mipmapped 텍스처의 경우 DDSD_MIPMAPCOUNT 플래그도 설정해야 합니다. 그러나 .dds 파일을 읽을 때 이러한 파일의 일부 기록기가 이러한 플래그를 설정하지 않을 수 있으므로 설정되는 DDSD_CAPS, DDSD_PIXELFORMAT 및 DDSD_MIPMAPCOUNT 플래그에 의존해서는 안 됩니다.
Dds.h에 정의된 DDS_HEADER_FLAGS_TEXTURE 플래그는 DDSD_CAPS, DDSD_HEIGHT, DDSD_WIDTH 및 DDSD_PIXELFORMAT 플래그의 비트 OR 조합입니다.
Dds.h에 정의된 DDS_HEADER_FLAGS_MIPMAP 플래그는 DDSD_MIPMAPCOUNT 플래그와 같습니다.
Dds.h에 정의된 DDS_HEADER_FLAGS_VOLUME 플래그는 DDSD_DEPTH 플래그와 같습니다.
Dds.h에 정의된 DDS_HEADER_FLAGS_PITCH 플래그는 DDSD_PITCH 플래그와 같습니다.
Dds.h에 정의된 DDS_HEADER_FLAGS_LINEARSIZE 플래그는 DDSD_LINEARSIZE 플래그와 같습니다.
-
dwHeight
-
형식: DWORD
-
표면 높이(픽셀)입니다.
-
dwWidth
-
형식: DWORD
-
표면 너비(픽셀)입니다.
-
dwPitchOrLinearSize
-
형식: DWORD
-
압축되지 않은 텍스처의 스캔 라인당 피치 또는 바이트 수입니다. 압축된 텍스처에 대한 최상위 텍스처의 총 바이트 수입니다. 피치를 계산하는 방법에 대한 자세한 내용은 DDS 프로그래밍 가이드의 DDS 파일 레이아웃 섹션을 참조하세요.
-
dwDepth
-
형식: DWORD
-
볼륨 텍스처의 깊이(픽셀)이고, 그렇지 않으면 사용되지 않습니다.
-
dwMipMapCount
-
형식: DWORD
-
Mipmap 수준 수이며, 그렇지 않으면 사용되지 않습니다.
-
dwReserved1[11]
-
형식: DWORD
-
사용되지 않습니다.
-
ddspf
-
형식: DDS_PIXELFORMAT
-
픽셀 형식입니다( DDS_PIXELFORMAT 참조).
-
dwCaps
-
형식: DWORD
-
저장된 표면의 복잡성을 지정합니다.
플래그 설명 값 DDSCAPS_COMPLEX 선택적; 둘 이상의 표면(mipmap, 입방형 환경 맵 또는 mipmapped 볼륨 텍스처)이 포함된 모든 파일에서 사용해야 합니다. 0x8 DDSCAPS_MIPMAP 선택적; 밉맵에 사용해야 합니다. 0x400000 DDSCAPS_TEXTURE 필수 0x1000 참고
.dds 파일을 작성할 때는 DDSCAPS_TEXTURE 플래그를 설정해야 하며, 여러 표면에 대해 DDSCAPS_COMPLEX 플래그도 설정해야 합니다. 그러나 .dds 파일을 읽을 때는 이러한 파일의 일부 기록기가 이러한 플래그를 설정하지 않을 수 있으므로 설정 중인 DDSCAPS_TEXTURE 및 DDSCAPS_COMPLEX 플래그를 사용하지 않아야 합니다.
Dds.h에 정의된 DDS_SURFACE_FLAGS_MIPMAP 플래그는 DDSCAPS_COMPLEX 및 DDSCAPS_MIPMAP 플래그의 비트 OR 조합입니다.
Dds.h에 정의된 DDS_SURFACE_FLAGS_TEXTURE 플래그는 DDSCAPS_TEXTURE 플래그와 같습니다.
Dds.h에 정의된 DDS_SURFACE_FLAGS_CUBEMAP 플래그는 DDSCAPS_COMPLEX 플래그와 같습니다.
-
dwCaps2
-
형식: DWORD
-
저장된 표면에 대한 추가 세부 정보입니다.
플래그 설명 값 DDSCAPS2_CUBEMAP 큐브 맵에 필요합니다. 0x200 DDSCAPS2_CUBEMAP_POSITIVEX 이러한 표면이 큐브 맵에 저장되는 경우 필요합니다. 0x400 DDSCAPS2_CUBEMAP_NEGATIVEX 이러한 표면이 큐브 맵에 저장되는 경우 필요합니다. 0x800 DDSCAPS2_CUBEMAP_POSITIVEY 이러한 표면이 큐브 맵에 저장되는 경우 필요합니다. 0x1000 DDSCAPS2_CUBEMAP_NEGATIVEY 이러한 표면이 큐브 맵에 저장되는 경우 필요합니다. 0x2000 DDSCAPS2_CUBEMAP_POSITIVEZ 이러한 표면이 큐브 맵에 저장되는 경우 필요합니다. 0x4000 DDSCAPS2_CUBEMAP_NEGATIVEZ 이러한 표면이 큐브 맵에 저장되는 경우 필요합니다. 0x8000 DDSCAPS2_VOLUME 볼륨 텍스처에 필요합니다. 0x200000 Dds.h에 정의된 DDS_CUBEMAP_POSITIVEX 플래그는 DDSCAPS2_CUBEMAP 플래그와 DDSCAPS2_CUBEMAP_POSITIVEX 플래그의 비트 OR 조합입니다.
Dds.h에 정의된 DDS_CUBEMAP_NEGATIVEX 플래그는 DDSCAPS2_CUBEMAP 플래그와 DDSCAPS2_CUBEMAP_NEGATIVEX 플래그의 비트 OR 조합입니다.
Dds.h에 정의된 DDS_CUBEMAP_POSITIVEY 플래그는 DDSCAPS2_CUBEMAP 플래그와 DDSCAPS2_CUBEMAP_POSITIVEY 플래그의 비트 OR 조합입니다.
Dds.h에 정의된 DDS_CUBEMAP_NEGATIVEY 플래그는 DDSCAPS2_CUBEMAP 플래그와 DDSCAPS2_CUBEMAP_NEGATIVEY 플래그의 비트 OR 조합입니다.
Dds.h에 정의된 DDS_CUBEMAP_POSITIVEZ 플래그는 DDSCAPS2_CUBEMAP 및 DDSCAPS2_CUBEMAP_POSITIVEZ 플래그의 비트 OR 조합입니다.
Dds.h에 정의된 DDS_CUBEMAP_NEGATIVEZ 플래그는 DDSCAPS2_CUBEMAP 플래그와 DDSCAPS2_CUBEMAP_NEGATIVEZ 플래그의 비트 OR 조합입니다.
Dds.h에 정의된 DDS_CUBEMAP_ALLFACES 플래그는 DDS_CUBEMAP_POSITIVEX, DDS_CUBEMAP_NEGATIVEX, DDS_CUBEMAP_POSITIVEY, DDS_CUBEMAP_NEGATIVEY, DDS_CUBEMAP_POSITIVEZ 및 DDSCAPS2_CUBEMAP_NEGATIVEZ 플래그의 비트 OR 조합입니다.
Dds.h에 정의된 DDS_FLAGS_VOLUME 플래그는 DDSCAPS2_VOLUME 플래그와 같습니다.
참고
Direct3D 9는 부분 큐브 맵을 지원하지만 Direct3D 10, 10.1 및 11은 6개의 큐브 맵 얼굴을 모두 정의해야 합니다(즉, DDS_CUBEMAP_ALLFACES 설정해야 합니다).
-
dwCaps3
-
형식: DWORD
-
사용되지 않습니다.
-
dwCaps4
-
형식: DWORD
-
사용되지 않습니다.
-
dwReserved2
-
형식: DWORD
-
사용되지 않습니다.
설명
유효한 데이터를 포함하는 구조체의 멤버에 대한 플래그를 dwFlags 에 포함합니다.
이 구조체를 DDS_HEADER_DXT10 함께 사용하여 DDS 파일에 리소스 배열을 저장합니다. 자세한 내용은 텍스처 배열을 참조하세요.
DDS_HEADER DirectDraw 종속성이 없는 DirectDraw DDSURFACEDESC2 구조체와 동일합니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 |
|