Структура DDBLTFX (ddraw.h)
Структура DDBLTFX передает растровые операции (ROPS), эффекты и сведения о переопределении в метод IDirectDrawSurface7::Blt . Эта структура также является частью структуры DDBLTBATCH , используемой с методом IDirectDrawSurface7::BltBatch .
Синтаксис
typedef struct _DDBLTFX {
DWORD dwSize;
DWORD dwDDFX;
DWORD dwROP;
DWORD dwDDROP;
DWORD dwRotationAngle;
DWORD dwZBufferOpCode;
DWORD dwZBufferLow;
DWORD dwZBufferHigh;
DWORD dwZBufferBaseDest;
DWORD dwZDestConstBitDepth;
#if ...
union {
DWORD dwZDestConst;
LPDIRECTDRAWSURFACE lpDDSZBufferDest;
} DUMMYUNIONNAMEN;
DWORD dwZSrcConstBitDepth;
#elif
union {
DWORD dwZSrcConst;
LPDIRECTDRAWSURFACE lpDDSZBufferSrc;
} DUMMYUNIONNAMEN;
DWORD dwAlphaEdgeBlendBitDepth;
DWORD dwAlphaEdgeBlend;
DWORD dwReserved;
DWORD dwAlphaDestConstBitDepth;
#elif
union {
DWORD dwAlphaDestConst;
LPDIRECTDRAWSURFACE lpDDSAlphaDest;
} DUMMYUNIONNAMEN;
DWORD dwAlphaSrcConstBitDepth;
#elif
union {
DWORD dwAlphaSrcConst;
LPDIRECTDRAWSURFACE lpDDSAlphaSrc;
} DUMMYUNIONNAMEN;
#else
union {
DWORD dwFillColor;
DWORD dwFillDepth;
DWORD dwFillPixel;
LPDIRECTDRAWSURFACE lpDDSPattern;
} DUMMYUNIONNAMEN;
#endif
DDCOLORKEY ddckDestColorkey;
DDCOLORKEY ddckSrcColorkey;
} DDBLTFX;
Члены
dwSize
Размер структуры в байтах. Этот элемент необходимо инициализировать перед использованием структуры.
dwDDFX
Тип операций FX. Определены следующие типы.
DDBLTFX_ARITHSTRETCHY
Использует арифметическое растягивание по оси Y для передачи битовых блоков (bitblt).
DDBLTFX_MIRRORLEFTRIGHT
Поворачивает поверхность по оси Y. Этот bitblt зеркально отражает поверхность слева направо.
DDBLTFX_MIRRORUPDOWN
Поворачивает поверхность по оси X. Этот bitblt отражает поверхность сверху вниз.
DDBLTFX_NOTEARING
Планирует этот bitblt, чтобы избежать разрыва.
DDBLTFX_ROTATE180
Поворачивает поверхность на 180 градусов по часовой стрелке в течение этого бита.
DDBLTFX_ROTATE270
Поворачивает поверхность на 270 градусов по часовой стрелке в течение этого бита.
DDBLTFX_ROTATE90
Поворачивает поверхность на 90 градусов по часовой стрелке в течение этого бита.
DDBLTFX_ZBUFFERBASEDEST
Добавляет элемент dwZBufferBaseDest к каждому из исходных значений z, прежде чем сравнивать их с целевыми значениями z во время этого z-bitblt.
DDBLTFX_ZBUFFERRANGE
Использует члены dwZBufferLow и dwZBufferHigh в качестве значений диапазона, чтобы указать ограничения для битов, скопированных из исходной поверхности во время этого z-bitblt.
dwROP
Растровые операции Win32. Список поддерживаемых растровых операций можно получить, вызвав метод IDirectDraw7::GetCaps .
dwDDROP
Растровые операции DirectDraw.
dwRotationAngle
Угол поворота для bitblt.
dwZBufferOpCode
Сравнение Z-буфера.
dwZBufferLow
Низкий предел z-буфера.
dwZBufferHigh
Высокий предел z-буфера.
dwZBufferBaseDest
Целевое базовое значение z-буфера.
dwZDestConstBitDepth
Битовая глубина целевой z-константы.
DUMMYUNIONNAMEN
DUMMYUNIONNAMEN.dwZDestConst
DUMMYUNIONNAMEN.lpDDSZBufferDest
dwZSrcConstBitDepth
Битовая глубина исходной z-константы.
DUMMYUNIONNAMEN.dwZSrcConst
DUMMYUNIONNAMEN.lpDDSZBufferSrc
dwAlphaEdgeBlendBitDepth
Битовая глубина константы для альфа-граничной смеси.
dwAlphaEdgeBlend
Альфа-константой, используемой для смешивания ребер.
dwReserved
Зарезервировано
dwAlphaDestConstBitDepth
Битовая глубина конечной альфа-константы.
DUMMYUNIONNAMEN.dwAlphaDestConst
DUMMYUNIONNAMEN.lpDDSAlphaDest
dwAlphaSrcConstBitDepth
Битовая глубина исходной альфа-константы.
DUMMYUNIONNAMEN.dwAlphaSrcConst
DUMMYUNIONNAMEN.lpDDSAlphaSrc
DUMMYUNIONNAMEN.dwFillColor
DUMMYUNIONNAMEN.dwFillDepth
DUMMYUNIONNAMEN.dwFillPixel
DUMMYUNIONNAMEN.lpDDSPattern
ddckDestColorkey
Переопределение ключа цвета назначения.
ddckSrcColorkey
Переопределение ключа цвета источника.
Комментарии
Профсоюзы в этой структуре были обновлены для работы с компиляторами, которые не поддерживают безымяные объединения. Если компилятор не поддерживает безымянный союз, определите токен NONAMELESSUNION перед включением файла заголовка Ddraw.h.
Требования
Требование | Значение |
---|---|
Заголовок | ddraw.h |