Поделиться через


Структура 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