Compartilhar via


Estrutura DDSURFACEDESC (ddraw.h)

A estrutura DDSURFACEDESC contém uma descrição de uma superfície a ser criada pelo driver.

Sintaxe

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;

Membros

dwSize

Especifica o tamanho em bytes dessa estrutura DDSURFACEDESC. Esse membro deve ser inicializado antes que a estrutura seja usada.

dwFlags

Especifica um conjunto de sinalizadores que determinam quais membros da estrutura DDSURFACEDESC contêm dados válidos. Esse membro pode ser um ou mais dos seguintes sinalizadores:

Sinalizador Significado

DDSD_ALL

Todos os membros de entrada contêm dados válidos.

DDSD_ALPHABITDEPTH

O membro dwAlphaBitDepth é válido.

DDSD_BACKBUFFERCOUNT

O membro dwBackBufferCount é válido.

DDSD_CAPS

O membro ddsCaps é válido.

DDSD_CKDESTBLT

O membro ddckCKDestBlt é válido.

DDSD_CKDESTOVERLAY

O membro ddckCKDestOverlay é válido.

DDSD_CKSRCBLT

O membro ddckCKSrcBlt é válido.

DDSD_CKSRCOVERLAY

O membro ddckCKSrcOverlay é válido.

DDSD_HEIGHT

O membro dwHeight é válido.

DDSD_LINEARSIZE

O membro dwLinearSize é válido.

DDSD_MIPMAPCOUNT

O membro dwMipMapCount é válido.

DDSD_PITCH

O membro lPitch é válido.

DDSD_PIXELFORMAT

O membro ddpfPixelFormat é válido.

DDSD_REFRESHRATE

O membro dwRefreshRate é válido.

DDSD_WIDTH

O membro dwWidth é válido.

DDSD_ZBUFFERBITDEPTH

O membro dwZBufferBitDepth é válido.

dwHeight

Especifica a altura da superfície, em pixels.

dwWidth

Especifica a largura da superfície, em pixels.

DUMMYUNIONNAMEN

N/D

DUMMYUNIONNAMEN.lPitch

Especifica o número de bytes entre o início de duas linhas de verificação adjacentes; ou seja, o número de bytes a serem adicionados ao endereço inicial de uma linha de verificação para alcançar o endereço inicial da próxima linha de verificação abaixo dela. O retorno de chamada DdCreateSurface do driver deve retornar esse valor.

DUMMYUNIONNAMEN.dwLinearSize

Especifica o tamanho em bytes de uma superfície otimizada, com alocação tardia e sem forma.

dwBackBufferCount

Especifica o número de buffers traseiros associados à superfície.

DUMMYUNIONNAMEN.dwMipMapCount

Especifica o número de níveis de mipmap.

DUMMYUNIONNAMEN.dwZBufferBitDepth

Especifica a profundidade do buffer z em bits por pixel.

DUMMYUNIONNAMEN.dwRefreshRate

Especifica a taxa de atualização em hertz do monitor (usado quando o modo de exibição é descrito).

dwAlphaBitDepth

Especifica a profundidade do buffer alfa em bits por pixel.

dwReserved

Reservado e deve ser definido como zero.

lpSurface

Especifica o endereço da memória de superfície associada.

ddckCKDestOverlay

Especifica a chave de cor para uso de sobreposição de destino.

ddckCKDestBlt

Especifica a chave de cor para uso blt de destino.

ddckCKSrcOverlay

Especifica a chave de cor para uso de sobreposição de origem.

ddckCKSrcBlt

Especifica a chave de cor para uso blt de origem.

ddpfPixelFormat

Especifica uma estrutura DDPIXELFORMAT que descreve o formato de pixel da superfície.

ddsCaps

Especifica uma estrutura DDSCAPS que contém os recursos de superfície Microsoft DirectDrawMicrosoft.

Comentários

Os membros relevantes diferem para cada tipo potencial de superfície. Normalmente, essa estrutura é criada e inicializada por um aplicativo.

Requisitos

   
Cabeçalho ddraw.h

Confira também