다음을 통해 공유


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

추가 정보