IDirectDrawSurface7::UpdateOverlay
The IDirectDrawSurface7::UpdateOverlay method repositions or modifies the visual attributes of an overlay surface. These surfaces must have the DDSCAPS_OVERLAY flag set.
HRESULT UpdateOverlay(
LPRECT lpSrcRect,
LPDIRECTDRAWSURFACE7 lpDDDestSurface,
LPRECT lpDestRect,
DWORD dwFlags,
LPDDOVERLAYFX lpDDOverlayFx
);
Parameters
- lpSrcRect
- Address of a RECT structure that defines the x, y, width, and height of the region on the source surface being used as the overlay. This parameter can be NULL when hiding an overlay or to indicate that the entire overlay surface is to be used and that the overlay surface conforms to any boundary and size-alignment restrictions imposed by the device driver.
- lpDDDestSurface
- Address of the IDirectDrawSurface7 interface for the surface that is being overlaid.
- lpDestRect
- Address of a RECT structure that defines the x, y, width, and height of the region on the destination surface that the overlay should be moved to. This parameter can be NULL when hiding the overlay.
- dwFlags
- The following flags are defined:
- DDOVER_ADDDIRTYRECT
- Adds a dirty rectangle to an emulated overlay surface.
- DDOVER_ALPHADEST
- Obsolete.
- DDOVER_ALPHADESTCONSTOVERRIDE
- Uses the dwAlphaDestConst member of the DDOVERLAYFX structure as the destination alpha channel for this overlay.
- DDOVER_ALPHADESTNEG
- Indicates that the destination surface becomes more transparent as the alpha value increases (0 is opaque).
- DDOVER_ALPHADESTSURFACEOVERRIDE
- Uses the lpDDSAlphaDest member of the DDOVERLAYFX structure as the alpha channel destination for this overlay.
- DDOVER_ALPHAEDGEBLEND
- Uses the dwAlphaEdgeBlend member of the DDOVERLAYFX structure as the alpha channel for the edges of the image that border the color key colors.
- DDOVER_ALPHASRC
- Uses either the alpha information in pixel format or the alpha channel surface attached to the source surface as the source alpha channel for this overlay.
- DDOVER_ALPHASRCCONSTOVERRIDE
- Uses the dwAlphaSrcConst member of the DDOVERLAYFX structure as the source alpha channel for this overlay.
- DDOVER_ALPHASRCNEG
- Indicates that the source surface becomes more transparent as the alpha value increases (0 is opaque).
- DDOVER_ALPHASRCSURFACEOVERRIDE
- Uses the lpDDSAlphaSrc member of the DDOVERLAYFX structure as the alpha channel source for this overlay.
- DDOVER_ARGBSCALEFACTORS
- New for DirectX 7.0. Indicates that the DDOVERLAYFX structure contains valid ARGB scaling factors.
- DDOVER_AUTOFLIP
- Automatically flips to the next surface in the flipping chain each time that a video port VSYNC occurs.
- DDOVER_BOB
- Displays each field of the interlaced video stream individually without causing any artifacts.
- DDOVER_BOBHARDWARE
- Bob operations are performed using hardware, rather than software or emulated. This flag must be used with the DDOVER_BOB flag.
- DDOVER_DDFX
- Uses the overlay FX flags in the lpDDOverlayFx parameter to define special overlay effects.
- DDOVER_DEGRADEARGBSCALING
- New for DirectX 7.0. ARGB scaling factors can be degraded to fit driver capabilities.
- DDOVER_HIDE
- Turns off this overlay.
- DDOVER_INTERLEAVED
- The surface memory is composed of interleaved fields.
- DDOVER_KEYDEST
- Uses the color key associated with the destination surface.
- DDOVER_KEYDESTOVERRIDE
- Uses the dckDestColorkey member of the DDOVERLAYFX structure as the color key for the destination surface.
- DDOVER_KEYSRC
- Uses the color key associated with the source surface.
- DDOVER_KEYSRCOVERRIDE
- Uses the dckSrcColorkey member of the DDOVERLAYFX structure as the color key for the source surface.
- DDOVER_OVERRIDEBOBWEAVE
- Bob and weave decisions should not be overridden by other interfaces.
- DDOVER_REFRESHALL
- Redraws the entire surface on an emulated overlayed surface.
- DDOVER_REFRESHDIRTYRECTS
- Redraws all dirty rectangles on an emulated overlayed surface.
- DDOVER_SHOW
- Turns on this overlay.
- lpDDOverlayFx
- Address of a DDOVERLAYFX structure that describes the effects to be used. Can be NULL if the DDOVER_DDFX flag is not specified.
Return Values
If the method succeeds, the return value is DD_OK.
If it fails, the method can return one of the following error values:
Windows NT/2000: Requires Windows 2000.
Windows 95/98: Requires Windows 98.
Header: Declared in ddraw.h.