Структура DDSURFACEDESC (ddraw.h)
Структура DDSURFACEDESC содержит описание поверхности, создаваемой драйвером.
Синтаксис
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;
Члены
dwSize
Задает размер данной структуры DDSURFACEDESC в байтах. Этот элемент необходимо инициализировать перед использованием структуры.
dwFlags
Задает набор флагов, определяющих, какие элементы структуры DDSURFACEDESC содержат допустимые данные. Этот элемент может быть одним или несколькими из следующих флагов:
Flag | Значение |
---|---|
DDSD_ALL |
Все входные элементы содержат допустимые данные. |
DDSD_ALPHABITDEPTH |
Допустимый член dwAlphaBitDepth . |
DDSD_BACKBUFFERCOUNT |
Допустимый член dwBackBufferCount . |
DDSD_CAPS |
Допустимый член ddsCaps . |
DDSD_CKDESTBLT |
Допустимый член ddckCKDestBlt . |
DDSD_CKDESTOVERLAY |
Допустимый элемент ddckCKDestOverlay . |
DDSD_CKSRCBLT |
Допустимый член ddckCKSrcBlt . |
DDSD_CKSRCOVERLAY |
Допустимый член ddckCKSrcOverlay . |
DDSD_HEIGHT |
Допустимый член dwHeight . |
DDSD_LINEARSIZE |
Допустимый член dwLinearSize . |
DDSD_MIPMAPCOUNT |
Член dwMipMapCount является допустимым. |
DDSD_PITCH |
Допустимый элемент lPitch . |
DDSD_PIXELFORMAT |
Допустимый элемент ddpfPixelFormat . |
DDSD_REFRESHRATE |
Допустимый элемент dwRefreshRate . |
DDSD_WIDTH |
Член dwWidth является допустимым . |
DDSD_ZBUFFERBITDEPTH |
Допустимый член dwZBufferBitDepth . |
dwHeight
Задает высоту поверхности в пикселях.
dwWidth
Задает ширину поверхности в пикселях.
DUMMYUNIONNAMEN
Н/Д
DUMMYUNIONNAMEN.lPitch
Указывает количество байтов между началами двух смежных строк сканирования; то есть число байтов, добавляемых к начальнму адресу одной строки сканирования, чтобы достичь начального адреса следующей строки сканирования под ней. Обратный вызов DdCreateSurface драйвера должен возвращать это значение.
DUMMYUNIONNAMEN.dwLinearSize
Задает размер в байтах бесформенной, выделенной с опозданием оптимизированной поверхности.
dwBackBufferCount
Указывает количество задних буферов, связанных с поверхностью.
DUMMYUNIONNAMEN.dwMipMapCount
Указывает количество уровней MIP-карты.
DUMMYUNIONNAMEN.dwZBufferBitDepth
Задает глубину z-буфера в битах на пиксель.
DUMMYUNIONNAMEN.dwRefreshRate
Указывает частоту обновления в герцах монитора (используется при описании режима отображения).
dwAlphaBitDepth
Задает глубину альфа-буфера в битах на пиксель.
dwReserved
Зарезервировано, и должно быть равно нулю.
lpSurface
Указывает адрес связанной контактной памяти.
ddckCKDestOverlay
Задает ключ цвета для использования наложения назначения.
ddckCKDestBlt
Задает ключ цвета для целевого использования blt.
ddckCKSrcOverlay
Задает ключ цвета для использования исходного наложения.
ddckCKSrcBlt
Задает ключ цвета для исходного использования blt.
ddpfPixelFormat
Задает структуру DDPIXELFORMAT , описывающую формат пикселей поверхности.
ddsCaps
Задает структуру DDSCAPS , содержащую возможности поверхности Microsoft DirectDrawMicrosoft.
Комментарии
Соответствующие элементы различаются для каждого потенциального типа поверхности. Эта структура обычно создается и инициализируется приложением.
Требования
Верхняя часть | ddraw.h |