DDBLTFX

This structure passes raster operations, effects, and override information to the IDirectDrawSurface5::Blt 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 table shows the possible flags.
    Flag Description
    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
    Microsoft® Win32® raster operations. You can retrieve a list of supported raster operations by calling the IDirectDraw4::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 palletized 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. The surface must be 8 pixels by 8 pixels.
  • 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

OS Versions: Windows CE 2.12 and later. Version 2.12 requires DXPAK 1.0 or later.
Header: Ddraw.h.

 Last updated on Thursday, April 08, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.