DDBLTFX
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 used with the IDirectDrawSurface7::BltBatch method.
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;
} DUMMYUNIONNAMEN(1);
DWORD dwZSrcConstBitDepth;
union
{
DWORD dwZSrcConst;
LPDIRECTDRAWSURFACE lpDDSZBufferSrc;
} DUMMYUNIONNAMEN(2);
DWORD dwAlphaEdgeBlendBitDepth;
DWORD dwAlphaEdgeBlend;
DWORD dwReserved;
DWORD dwAlphaDestConstBitDepth;
union
{
DWORD dwAlphaDestConst;
LPDIRECTDRAWSURFACE lpDDSAlphaDest;
} DUMMYUNIONNAMEN(3);
DWORD dwAlphaSrcConstBitDepth;
union
{
DWORD dwAlphaSrcConst;
LPDIRECTDRAWSURFACE lpDDSAlphaSrc;
} DUMMYUNIONNAMEN(4);
union
{
DWORD dwFillColor;
DWORD dwFillDepth;
DWORD dwFillPixel;
LPDIRECTDRAWSURFACE lpDDSPattern;
} DUMMYUNIONNAMEN(5);
DDCOLORKEY ddckDestColorkey;
DDCOLORKEY ddckSrcColorkey;
} DDBLTFX,FAR* LPDDBLTFX;
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 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
- 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 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.
- dwAlphaEdgeBlendBitDepth
- Bit depth of the constant for an alpha edge blend.
- dwAlphaEdgeBlend
- Alpha constant used for edge blending.
- 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 must be a pixel appropriate to the pixel format of the destination surface. For a palettized surface, it would be a palette index, and for a 16-bit RGB surface, it would be a 16-bit pixel value.
- dwFillDepth
- Depth value for the z-buffer.
- dwFillPixel
- Pixel value for RGBA or RGBZ fills. Applications that use RGBZ fills should use this member, not dwFillColor or dwFillDepth.
- 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.
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.
Windows NT/2000: Requires Windows NT 4.0 SP3 or later.
Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
Header: Declared in ddraw.h.