DDBLTFX structure (ddraw.h)
The DDBLTFX structure passes raster operations (ROPs), effects, and override information to the IDirectDrawSurface7::Blt method. This structure is also part of the DDBLTBATCH structure that is used with the IDirectDrawSurface7::BltBatch method.
Syntax
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;
Members
dwSize
Size of the structure, in bytes. This member must be initialized before the structure is used.
dwDDFX
Type of FX operations. The following types are defined.
DDBLTFX_ARITHSTRETCHY
Uses arithmetic stretching along the y-axis for this bit block transfer (bitblt).
DDBLTFX_MIRRORLEFTRIGHT
Turns the surface on its y-axis. This bitblt mirrors the surface from left to right.
DDBLTFX_MIRRORUPDOWN
Turns the surface on its x-axis. This bitblt mirrors the surface from top to bottom.
DDBLTFX_NOTEARING
Schedules this bitblt to avoid tearing.
DDBLTFX_ROTATE180
Rotates the surface 180 degrees clockwise during this bitblt.
DDBLTFX_ROTATE270
Rotates the surface 270 degrees clockwise during this bitblt.
DDBLTFX_ROTATE90
Rotates the surface 90 degrees clockwise during this bitblt.
DDBLTFX_ZBUFFERBASEDEST
Adds the dwZBufferBaseDest member to each of the source z-values before comparing them with the destination z-values during this z-bitblt.
DDBLTFX_ZBUFFERRANGE
Uses the dwZBufferLow and dwZBufferHigh members as range values to specify limits to the bits copied from a source surface during this z-bitblt.
dwROP
Win32 raster operations. You can retrieve a list of supported raster operations by calling the IDirectDraw7::GetCaps method.
dwDDROP
DirectDraw raster operations.
dwRotationAngle
Rotation angle for the bitblt.
dwZBufferOpCode
Z-buffer compares.
dwZBufferLow
Low limit of a z-buffer.
dwZBufferHigh
High limit of a z-buffer.
dwZBufferBaseDest
Destination base value of a z-buffer.
dwZDestConstBitDepth
Bit depth of the destination z-constant.
DUMMYUNIONNAMEN
DUMMYUNIONNAMEN.dwZDestConst
DUMMYUNIONNAMEN.lpDDSZBufferDest
dwZSrcConstBitDepth
Bit depth of the source z-constant.
DUMMYUNIONNAMEN.dwZSrcConst
DUMMYUNIONNAMEN.lpDDSZBufferSrc
dwAlphaEdgeBlendBitDepth
Bit depth of the constant for an alpha edge blend.
dwAlphaEdgeBlend
Alpha constant used for edge blending.
dwReserved
Reserved
dwAlphaDestConstBitDepth
Bit depth of the destination alpha constant.
DUMMYUNIONNAMEN.dwAlphaDestConst
DUMMYUNIONNAMEN.lpDDSAlphaDest
dwAlphaSrcConstBitDepth
Bit depth of the source alpha constant.
DUMMYUNIONNAMEN.dwAlphaSrcConst
DUMMYUNIONNAMEN.lpDDSAlphaSrc
DUMMYUNIONNAMEN.dwFillColor
DUMMYUNIONNAMEN.dwFillDepth
DUMMYUNIONNAMEN.dwFillPixel
DUMMYUNIONNAMEN.lpDDSPattern
ddckDestColorkey
Destination color key override.
ddckSrcColorkey
Source color key override.
Remarks
The unions in this structure have been updated to work with compilers that do not support nameless unions. If your compiler does not support nameless unions, define the NONAMELESSUNION token before including the Ddraw.h header file.
Requirements
Requirement | Value |
---|---|
Header | ddraw.h |