DDSURFACEDESC2 구조체(ddraw.h)
DDSURFACEDESC2 구조체에는 드라이버에서 만들 표면에 대한 설명이 포함되어 있습니다.
구문
typedef struct _DDSURFACEDESC2 {
DWORD dwSize;
DWORD dwFlags;
DWORD dwHeight;
DWORD dwWidth;
#if ...
union {
LONG lPitch;
DWORD dwLinearSize;
} DUMMYUNIONNAMEN;
#elif
union {
DWORD dwBackBufferCount;
DWORD dwDepth;
} DUMMYUNIONNAMEN;
#elif
union {
DWORD dwMipMapCount;
DWORD dwRefreshRate;
DWORD dwSrcVBHandle;
} DUMMYUNIONNAMEN;
DWORD dwAlphaBitDepth;
DWORD dwReserved;
LPVOID lpSurface;
#elif
union {
DDCOLORKEY ddckCKDestOverlay;
DWORD dwEmptyFaceColor;
} DUMMYUNIONNAMEN;
DDCOLORKEY ddckCKDestBlt;
DDCOLORKEY ddckCKSrcOverlay;
DDCOLORKEY ddckCKSrcBlt;
#else
union {
DDPIXELFORMAT ddpfPixelFormat;
DWORD dwFVF;
} DUMMYUNIONNAMEN;
#endif
DDSCAPS2 ddsCaps;
DWORD dwTextureStage;
} *LPDDSURFACEDESC2, DDSURFACEDESC2;
멤버
dwSize
이 DDSURFACEDESC2 구조체의 크기(바이트)를 지정합니다. 구조체를 사용하려면 먼저 이 멤버를 초기화해야 합니다.
dwFlags
유효한 데이터가 포함된 DDSURFACEDESC2 구조체의 멤버를 결정하는 플래그 집합을 지정합니다. 이 멤버는 다음 플래그 중 하나 이상이 될 수 있습니다.
플래그 | 의미 |
---|---|
DDSD_ALL |
모든 입력 멤버는 유효한 데이터를 포함합니다. |
DDSD_ALPHABITDEPTH |
dwAlphaBitDepth 멤버가 유효합니다. |
DDSD_BACKBUFFERCOUNT |
dwBackBufferCount 멤버가 유효합니다. |
DDSD_CAPS |
ddsCaps 멤버가 유효합니다. |
DDSD_CKDESTBLT |
ddckCKDestBlt 멤버가 유효합니다. |
DDSD_CKDESTOVERLAY |
ddckCKDestOverlay 멤버가 유효합니다. |
DDSD_CKSRCBLT |
ddckCKSrcBlt 멤버가 유효합니다. |
DDSD_CKSRCOVERLAY |
ddckCKSrcOverlay 멤버가 유효합니다. |
DDSD_FVF |
dwFVF 멤버가 유효합니다. |
DDSD_HEIGHT |
dwHeight 멤버가 유효합니다. |
DDSD_LINEARSIZE |
dwLinearSize 멤버가 유효합니다. |
DDSD_LPSURFACE |
lpSurface 멤버가 유효합니다. |
DDSD_MIPMAPCOUNT |
dwMipMapCount 멤버가 유효합니다. |
DDSD_PITCH |
lPitch 멤버가 유효합니다. |
DDSD_PIXELFORMAT |
ddpfPixelFormat 멤버가 유효합니다. |
DDSD_REFRESHRATE |
dwRefreshRate 멤버가 유효합니다. |
DDSD_SRCVBHANDLE |
dwSrcVBHandle 멤버가 유효합니다. |
DDSD_TEXTURESTAGE |
dwTextureStage 멤버가 유효합니다. |
DDSD_WIDTH |
dwWidth 멤버가 유효합니다. |
DDSD_ZBUFFERBITDEPTH |
이 플래그는 DDSURFACEDESC2 사용되지 않습니다. DDSURFACEDESC에서만 사용됩니다. |
dwHeight
표면의 높이를 픽셀 단위로 지정합니다.
dwWidth
표면의 너비를 픽셀 단위로 지정합니다.
DUMMYUNIONNAMEN
해당 없음
DUMMYUNIONNAMEN.lPitch
인접한 두 스캔 줄의 시작 부분 사이의 바이트 수를 지정합니다. 즉, 아래의 다음 검사 줄의 시작 주소에 도달하기 위해 한 검색 줄의 시작 주소에 추가할 바이트 수입니다. 드라이버의 DdCreateSurface 콜백은 이 값을 반환해야 합니다.
DUMMYUNIONNAMEN.dwLinearSize
양식이 없고, 늦게 할당되고, 최적화된 표면의 크기(바이트)를 지정합니다.
DUMMYUNIONNAMEN.dwBackBufferCount
표면과 연결된 백 버퍼 수를 지정합니다.
DUMMYUNIONNAMEN.dwDepth
볼륨 텍스처인 경우 비트 깊이입니다.
DUMMYUNIONNAMEN.dwMipMapCount
Mipmap 수준 수를 지정합니다.
DUMMYUNIONNAMEN.dwRefreshRate
모니터의 hertz에서 새로 고침 빈도를 지정합니다(디스플레이 모드를 설명할 때 사용됨).
DUMMYUNIONNAMEN.dwSrcVBHandle
IDirect3DVertexBuffer7::Optimize에 사용되는 원본을 지정합니다(Microsoft Direct3D SDK 설명서에 설명됨).
dwAlphaBitDepth
알파 버퍼의 깊이를 픽셀당 비트 단위로 지정합니다.
dwReserved
예약된 및 는 0으로 설정해야 합니다.
lpSurface
연결된 표면 메모리의 주소를 지정합니다.
DUMMYUNIONNAMEN.ddckCKDestOverlay
대상 오버레이 사용에 대한 색 키를 지정합니다.
DUMMYUNIONNAMEN.dwEmptyFaceColor
빈 큐브 맵 면의 실제 색을 지정합니다.
ddckCKDestBlt
대상 블릿 사용에 대한 색 키를 지정합니다.
ddckCKSrcOverlay
원본 오버레이 사용에 대한 색 키를 지정합니다.
ddckCKSrcBlt
원본 블릿 사용에 대한 색 키를 지정합니다.
DUMMYUNIONNAMEN.ddpfPixelFormat
표면의 픽셀 형식을 설명하는 DDPIXELFORMAT 구조를 지정합니다.
DUMMYUNIONNAMEN.dwFVF
꼭짓점 버퍼에 대한 D3DFVF(유연한 꼭짓점 형식)를 지정합니다.
ddsCaps
DirectDraw 표면 기능을 포함하는 DDSCAPS 구조를 지정합니다.
dwTextureStage
다중 텍스트 계단식의 단계를 지정합니다. 자세한 내용은 텍스처 단계를 참조하세요.
설명
관련 멤버는 표면의 잠재적 유형마다 다릅니다. 이 구조체는 일반적으로 애플리케이션에 의해 만들어지고 초기화됩니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | ddraw.h |