Microsoft DirectX 9.0

IDirectDrawSurface::UpdateOverlay

The UpdateOverlay method repositions and/or modifies the visual attributes of an overlay surface. These surfaces must have the DDSCAPS_OVERLAY bit set.

Syntax

HRESULT UpdateOverlay(
  LPRECT lpSrcRect,
  LPDIRECTDRAWSURFACE lpDDDestSurface,
  LPRECT lpDestRect,
  DWORD dwFlags,
  LPDDOVERLAYFX lpDDOverlayFx
  );

Parameters

dwSrcRect

Points to a RECT structure that defines the X, Y, width, and height of the region on the source surface which is being used as the overlay.

lpDDDestSurface

Points to the IDirectDrawSurface interface of the surface that is being overlayed.

lpDestRect

Points to a RECT structure that defines the X, Y, width, and height of the region on the destination surface which the overlay should be moved to.

dwFlags

Zero or more of the following flags.

Value Description
DDOVER_ALPHADEST Use the alpha information in the pixel format or the alpha channel surface attached to the destination surface as the alpha channel for the destination overlay.
DDOVER_ALPHADESTCONSTOVERRIDE Use the dwConstAlphaDest member in the DDOVERLAYFX structure as the destination alpha channel for this overlay.
DDOVER_ALPHADESTNEG The NEG suffix indicates that the destination surface becomes more transparent as the alpha value increases.
DDOVER_ALPHADESTSURFACEOVERRIDE Use the lpDDSAlphaDest member in the DDOVERLAYFX structure as the alpha channel destination for this overlay.
DDOVER_ALPHAEDGEBLEND Use the dwAlphaEdgeBlend member in the DDOVERLAYFX structure as the alpha channel for the edges of the image that border the color key colors.
DDOVER_ALPHASRC Use the alpha information in the pixel format or the alpha channel surface attached to the source surface as the source alpha channel for this overlay.
DDOVER_ALPHASRCCONSTOVERRIDE Use the dwConstAlphaSrc member in the DDOVERLAYFX structure as the source alpha channel for this overlay.
DDOVER_ALPHASRCNEG The NEG suffix indicates that the source surface becomes more transparent as the alpha value increases.
DDOVER_ALPHASRCSURFACEOVERRIDE Use the lpDDSAlphaSrc member in the DDOVERLAYFX structure as the alpha channel source for this overlay.
DDOVER_HIDE Turn this overlay off.
DDOVER_KEYDEST Use the color key associated with the destination surface.
DDOVER_KEYDESTOVERRIDE Use the dckDestColorkey member in the DDOVERLAYFX structure as the color key for the destination surface.
DDOVER_KEYSRC Use the color key associated with the source surface.
DDOVER_KEYSRCOVERRIDE Use the dckSrcColorkey member in the DDOVERLAYFX structure as the color key for the source surface.
DDOVER_SHOW Turn this overlay on.
DDOVER_ZORDER Use the dwZOrderFlags member in the DDOVERLAYFX structure as the z order for the display of this overlay. The lpDDSRelative member will be used if the dwZOrderFlags member is set to either DDOVERZ_INSERTINBACKOF or DDOVERZ_INSERTINFRONTOF.

lpDDOverlayFx

Pointer to a DDOVERLAYFX structure.

Return Values

Value Description
DD_OK The method succeeded.
DDERR_SURFACELOST Access to this surface is being refused because the surface memory is gone. The DirectDrawSurface object representing this surface should have Restore called on it.
Access to this surface is being refused because the surface memory is gone. The DirectDrawSurface object representing this surface should have Restore called on it. One or more of the input parameters is invalid.
DDERR_INVALIDOBJECT DirectDraw received a pointer that was an invalid DirectDraw object.
DDERR_INVALIDRECT Rectangle provided was invalid.
DDERR_HEIGHTALIGN Height of rectangle provided is not a multiple of alignment.
DDERR_XALIGN Rectangle provided was not horizontally aligned on required boundary.
DDERR_UNSUPPORTED Action not supported.
DDERR_NOSTRETCHHW Operation could not be carried out because there is no hardware support for stretching.
DDERR_GENERIC Generic failure.
DDERR_NOTAOVERLAYSURFACE Returned when an overlay method is called for a non-overlay surface.

See Also