Metodo IDirectDrawSurface7::UpdateOverlay (ddraw.h)
Riposiziona o modifica gli attributi visivi di una superficie di sovrapposizione. Queste superfici devono avere il flag di DDSCAPS_OVERLAY impostato.
Sintassi
HRESULT UpdateOverlay(
[in] LPRECT unnamedParam1,
[in] LPDIRECTDRAWSURFACE7 unnamedParam2,
[in] LPRECT unnamedParam3,
[in] DWORD unnamedParam4,
[in] LPDDOVERLAYFX unnamedParam5
);
Parametri
[in] unnamedParam1
Puntatore a una struttura RECT che definisce la proprietà x, y, larghezza e altezza dell'area nell'area di origine usata come sovrapposizione. Questo parametro può essere NULL per nascondere una sovrapposizione o per indicare che l'intera superficie di sovrapposizione deve essere usata e che la superficie di sovrapposizione è conforme a qualsiasi limite e restrizioni di allineamento delle dimensioni imposte dal driver del dispositivo.
[in] unnamedParam2
Puntatore all'interfaccia IDirectDrawSurface7 per l'oggetto DirectDrawSurface che sta eseguendo l'overlaid.
[in] unnamedParam3
Puntatore a una struttura RECT che definisce la larghezza, x e l'altezza, y, dell'area nell'area di destinazione in cui deve essere spostata la sovrapposizione. Questo parametro può essere NULL per nascondere la sovrapposizione.
[in] unnamedParam4
Combinazione dei flag seguenti che determinano l'aggiornamento di sovrapposizione:
DDOVER_ADDDIRTYRECT
Aggiunge un rettangolo sporco a una superficie di sovrapposizione emulata.
DDOVER_ALPHADEST
Obsoleta.
DDOVER_ALPHADESTCONSTOVERRIDE
Usa il membro dwAlphaDestConst della struttura DDOVERLAYFX come canale alfa di destinazione per questa sovrapposizione.
DDOVER_ALPHADESTNEG
Indica che la superficie di destinazione diventa più trasparente quando il valore alfa aumenta (0 è opaco).
DDOVER_ALPHADESTSURFACEOVERRIDE
Usa il membro lpDDSAlphaDest della struttura DDOVERLAYFX come destinazione del canale alfa per questa sovrapposizione.
DDOVER_ALPHAEDGEBLEND
Usa il membro dwAlphaEdgeBlend della struttura DDOVERLAYFX come canale alfa per i bordi dell'immagine che delimita i colori della chiave di colore.
DDOVER_ALPHASRC
Usa le informazioni alfa in formato pixel o la superficie del canale alfa collegata alla superficie di origine come canale alfa di origine per questa sovrapposizione.
DDOVER_ALPHASRCCONSTOVERRIDE
Usa il membro dwAlphaSrcConst della struttura DDOVERLAYFX come canale alfa di origine per questa sovrapposizione.
DDOVER_ALPHASRCNEG
Indica che la superficie di origine diventa più trasparente quando il valore alfa aumenta (0 è opaco).
DDOVER_ALPHASRCSURFACEOVERRIDE
Usa il membro lpDDSAlphaSrc della struttura DDOVERLAYFX come origine del canale alfa per questa sovrapposizione.
DDOVER_ARGBSCALEFACTORS
Novità per DirectX 7.0. Indica che la struttura DDOVERLAYFX contiene fattori di ridimensionamento ARGB validi.
DDOVER_AUTOFLIP
Si capovolge automaticamente alla superficie successiva della catena di scorrimento ogni volta che si verifica una porta video VSYNC.
DDOVER_BOB
Visualizza ogni campo del flusso video interlacciato singolarmente senza causare la visualizzazione di elementi.
DDOVER_BOBHARDWARE
Le operazioni Bob vengono eseguite usando hardware, anziché usando software o emulazione. Questo flag deve essere usato con il flag DDOVER_BOB.
DDOVER_DDFX
Usa i flag FX di sovrapposizione nel parametro lpDDOverlayFx per definire effetti di sovrapposizione speciali.
DDOVER_DEGRADEARGBSCALING
Novità per DirectX 7.0. I fattori di ridimensionamento ARGB possono essere degradati per adattarsi alle funzionalità del driver.
DDOVER_HIDE
Disattiva questa sovrapposizione.
DDOVER_INTERLEAVED
La memoria della superficie è costituita da campi interleaved.
DDOVER_KEYDEST
Usa la chiave di colore associata all'area di destinazione.
DDOVER_KEYDESTOVERRIDE
Usa il membro dckDestColorkey della struttura DDOVERLAYFX come chiave di colore per l'area di destinazione.
DDOVER_KEYSRC
Usa la chiave di colore associata all'area di origine.
DDOVER_KEYSRCOVERRIDE
Usa il membro dckSrcColorkey della struttura DDOVERLAYFX come chiave di colore per l'area di origine.
DDOVER_OVERRIDEBOBWEAVE
Le decisioni di Bob e weave non devono essere sostituite da altre interfacce.
DDOVER_REFRESHALL
Ridisegna l'intera superficie su una superficie sovrapposta emulata.
DDOVER_REFRESHDIRTYRECTS
Ridisegna tutti i rettangoli sporchi su una superficie sovrapposta emulata.
DDOVER_SHOW
Attiva questa sovrapposizione.
[in] unnamedParam5
Puntatore alla struttura DDOVERLAYFX che descrive gli effetti da usare. Può essere NULL se il flag di DDOVER_DDFX non è specificato.
Valore restituito
Se il metodo ha esito positivo, il valore restituito è DD_OK.
Se ha esito negativo, il metodo può restituire uno dei valori di errore seguenti:
- DDERR_DEVICEDOESNTOWNSURFACE
- DDERR_GENERIC
- DDERR_HEIGHTALIGN
- DDERR_INVALIDOBJECT
- DDERR_INVALIDPARAMS
- DDERR_INVALIDRECT
- DDERR_INVALIDSURFACETYPE
- DDERR_NOSTRETCHHW
- DDERR_NOTAOVERLAYSURFACE
- DDERR_OUTOFCAPS
- DDERR_SURFACELOST
- DDERR_UNSUPPORTED
- DDERR_XALIGN
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | ddraw.h |
Libreria | Ddraw.lib |
DLL | Ddraw.dll |