Microsoft DirectX 9.0 |
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