Compartir a través de


Estructura DDSURFACEDESC (ddraw.h)

La estructura DDSURFACEDESC contiene una descripción de una superficie que el controlador va a crear.

Sintaxis

typedef struct _DDSURFACEDESC {
  DWORD         dwSize;
  DWORD         dwFlags;
  DWORD         dwHeight;
  DWORD         dwWidth;
#if ...
  union {
    LONG  lPitch;
    DWORD dwLinearSize;
  } DUMMYUNIONNAMEN;
  DWORD         dwBackBufferCount;
#else
  union {
    DWORD dwMipMapCount;
    DWORD dwZBufferBitDepth;
    DWORD dwRefreshRate;
  } DUMMYUNIONNAMEN;
#endif
  DWORD         dwAlphaBitDepth;
  DWORD         dwReserved;
  LPVOID        lpSurface;
  DDCOLORKEY    ddckCKDestOverlay;
  DDCOLORKEY    ddckCKDestBlt;
  DDCOLORKEY    ddckCKSrcOverlay;
  DDCOLORKEY    ddckCKSrcBlt;
  DDPIXELFORMAT ddpfPixelFormat;
  DDSCAPS       ddsCaps;
} *LPDDSURFACEDESC, DDSURFACEDESC;

Miembros

dwSize

Especifica el tamaño en bytes de esta estructura DDSURFACEDESC. Este miembro debe inicializarse antes de usar la estructura.

dwFlags

Especifica un conjunto de marcas que determinan qué miembros de la estructura DDSURFACEDESC contienen datos válidos. Este miembro puede ser una o varias de las marcas siguientes:

Marca Significado

DDSD_ALL

Todos los miembros de entrada contienen datos válidos.

DDSD_ALPHABITDEPTH

El miembro dwAlphaBitDepth es válido.

DDSD_BACKBUFFERCOUNT

El miembro dwBackBufferCount es válido.

DDSD_CAPS

El miembro ddsCaps es válido.

DDSD_CKDESTBLT

El miembro ddckCKDestBlt es válido.

DDSD_CKDESTOVERLAY

El miembro ddckCKDestOverlay es válido.

DDSD_CKSRCBLT

El miembro ddckCKSrcBlt es válido.

DDSD_CKSRCOVERLAY

El miembro ddckCKSrcOverlay es válido.

DDSD_HEIGHT

El miembro dwHeight es válido.

DDSD_LINEARSIZE

El miembro dwLinearSize es válido.

DDSD_MIPMAPCOUNT

El miembro dwMipMapCount es válido.

DDSD_PITCH

El miembro lPitch es válido.

DDSD_PIXELFORMAT

El miembro ddpfPixelFormat es válido.

DDSD_REFRESHRATE

El miembro dwRefreshRate es válido.

DDSD_WIDTH

El miembro dwWidth es válido.

DDSD_ZBUFFERBITDEPTH

El miembro dwZBufferBitDepth es válido.

dwHeight

Especifica el alto de la superficie, en píxeles.

dwWidth

Especifica el ancho de la superficie, en píxeles.

DUMMYUNIONNAMEN

N/D

DUMMYUNIONNAMEN.lPitch

Especifica el número de bytes entre los comienzos de dos líneas de examen adyacentes; es decir, el número de bytes que se van a agregar a la dirección inicial de una línea de examen para llegar a la dirección inicial de la siguiente línea de examen debajo de ella. La devolución de llamada DdCreateSurface del controlador debe devolver este valor.

DUMMYUNIONNAMEN.dwLinearSize

Especifica el tamaño en bytes de una superficie optimizada sin formato asignada en tiempo de demora.

dwBackBufferCount

Especifica el número de búferes de reserva asociados a la superficie.

DUMMYUNIONNAMEN.dwMipMapCount

Especifica el número de niveles de mapa mip.

DUMMYUNIONNAMEN.dwZBufferBitDepth

Especifica la profundidad del búfer z en bits por píxel.

DUMMYUNIONNAMEN.dwRefreshRate

Especifica la frecuencia de actualización en hercios del monitor (se usa cuando se describe el modo de presentación).

dwAlphaBitDepth

Especifica la profundidad del búfer alfa en bits por píxel.

dwReserved

Reservado y debe establecerse en cero.

lpSurface

Especifica la dirección de la memoria expuesta asociada.

ddckCKDestOverlay

Especifica la clave de color para el uso de superposición de destino.

ddckCKDestBlt

Especifica la clave de color para el uso de blt de destino.

ddckCKSrcOverlay

Especifica la clave de color para el uso de superposición de origen.

ddckCKSrcBlt

Especifica la clave de color para el uso de blt de origen.

ddpfPixelFormat

Especifica una estructura DDPIXELFORMAT que describe el formato de píxel de la superficie.

ddsCaps

Especifica una estructura DDSCAPS que contiene las funcionalidades de superficie de Microsoft DirectDrawMicrosoft.

Comentarios

Los miembros pertinentes difieren para cada posible tipo de superficie. Normalmente, una aplicación crea e inicializa esta estructura.

Requisitos

   
Encabezado ddraw.h

Consulte también