DDBLTFX

typedef struct _DDBLTFX{

DWORD dwSize;

DWORD dwDDFX;

DWORD dwROP;

DWORD dwDDROP;

DWORD dwRotationAngle;

DWORD dwZBufferOpCode;

DWORD dwZBufferLow;

DWORD dwZBufferHigh;

DWORD dwZBufferBaseDest;

DWORD dwZDestConstBitDepth;

union

{

DWORD dwZDestConst;

LPDIRECTDRAWSURFACE lpDDSZBufferDest;

};

DWORD dwZSrcConstBitDepth;

union

{

DWORD dwZSrcConst;

LPDIRECTDRAWSURFACE lpDDSZBufferSrc;

};

DWORD dwAlphaEdgeBlendBitDepth;

DWORD dwAlphaEdgeBlend;

DWORD dwReserved;

DWORD dwAlphaDestConstBitDepth;

union

{

DWORD dwAlphaDestConst;

LPDIRECTDRAWSURFACE lpDDSAlphaDest;

};

DWORD dwAlphaSrcConstBitDepth;

union

{

DWORD dwAlphaSrcConst;

LPDIRECTDRAWSURFACE lpDDSAlphaSrc;

};

union

{

DWORD dwFillColor;

DWORD dwFillDepth;

LPDIRECTDRAWSURFACE lpDDSPattern;

};

DDCOLORKEY ddckDestColorkey;

DDCOLORKEY ddckSrcColorkey;

} DDBLTFX,FAR* LPDDBLTFX;

Passes raster operations, effects, and override information to the IDirectDrawSurface::Blt method. It is also part of the DDBLTBATCH structure used with the IDirectDrawSurface::BltBatch method.

dwSize

Size of the structure. This must be initialized before the structure is used.

dwDDFX

Specifies the type of FX operations.

DDBLTFX_ARITHSTRETCHY

Uses arithmetic stretching along the y-axis for this blit.

DDBLTFX_MIRRORLEFTRIGHT

Turns the surface on its y-axis. This blit mirrors the surface from left to right.

DDBLTFX_MIRRORUPDOWN

Turns the surface on its x-axis. This blit mirrors the surface from top to bottom.

DDBLTFX_NOTEARING

Schedules this blit to avoid tearing.

DDBLTFX_ROTATE180

Rotates the surface 180 degrees clockwise during this blit.

DDBLTFX_ROTATE270

Rotates the surface 270 degrees clockwise during this blit.

DDBLTFX_ROTATE90

Rotates the surface 90 degrees clockwise during this blit.

DDBLTFX_ZBUFFERBASEDEST

Adds the dwZBufferBaseDest member to each of the source z-values before comparing them with the destination z-values during this z-blit.

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-blit.

dwROP

Specifies the Win32 raster operations.

dwDDROP

Specifies the DirectDraw raster operations.

dwRotationAngle

Rotation angle for the blit.

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.

dwZDestConst

Constant used as the z-buffer destination.

lpDDSZBufferDest

Surface used as the z-buffer destination.

dwZSrcConstBitDepth

Bit depth of the source z-constant.

dwZSrcConst

Constant used as the z-buffer source.

lpDDSZBufferSrc

Surface used as the z-buffer source.

dwAlphaEdgeBlend

Alpha used for edge blending.

dwAlphaEdgeBlendBitDepth

Bit depth of the constant for an alpha edge blend.

dwReserved

Reserved for future use.

dwAlphaDestConstBitDepth

Bit depth of the destination alpha constant.

dwAlphaDestConst

Constant used as the alpha channel destination.

lpDDSAlphaDest

Surface used as the alpha channel destination.

dwAlphaSrcConstBitDepth

Bit depth of the source alpha constant.

dwAlphaSrcConst

Constant used as the alpha channel source.

lpDDSAlphaSrc

Surface used as the alpha channel source.

dwFillColor

Color used to fill a surface when DDBLT_COLORFILL is specified. This value can be either an RGB triple or a palette index, depending on the surface type.

dwFillDepth

Depth value for the z-buffer.

lpDDSPattern

Surface to use as a pattern. The pattern can be used in certain blit operations that combine a source and a destination.

ddckDestColorkey

Destination color key override.

ddckSrcColorkey

Source color key override.