IDirectDrawSurface7::UpdateOverlay-Methode (ddraw.h)
Positioniert oder ändert die visuellen Attribute einer Überlagerungsoberfläche. Für diese Oberflächen muss das flag DDSCAPS_OVERLAY festgelegt sein.
Syntax
HRESULT UpdateOverlay(
[in] LPRECT unnamedParam1,
[in] LPDIRECTDRAWSURFACE7 unnamedParam2,
[in] LPRECT unnamedParam3,
[in] DWORD unnamedParam4,
[in] LPDDOVERLAYFX unnamedParam5
);
Parameter
[in] unnamedParam1
Ein Zeiger auf eine RECT-Struktur , die die x-, y-, Breiten- und Höhe des Bereichs auf der Quelloberfläche definiert, die als Überlagerung verwendet wird. Dieser Parameter kann NULL sein, um eine Überlagerung auszublenden oder anzugeben, dass die gesamte Überlagerungsoberfläche verwendet werden soll und dass die Überlagerungsoberfläche allen Vom Gerätetreiber auferlegten Begrenzungs- und Größenausrichtungseinschränkungen entspricht.
[in] unnamedParam2
Ein Zeiger auf die IDirectDrawSurface7-Schnittstelle für das DirectDrawSurface-Objekt, das überlagert wird.
[in] unnamedParam3
Ein Zeiger auf eine RECT-Struktur , die die Breite, x und Höhe y des Bereichs auf der Zieloberfläche definiert, in den die Überlagerung verschoben werden soll. Dieser Parameter kann NULL sein, um die Überlagerung auszublenden.
[in] unnamedParam4
Eine Kombination der folgenden Flags, die das Overlayupdate bestimmen:
DDOVER_ADDDIRTYRECT
Fügt einer emulierten Überlagerungsoberfläche ein modifiziert Rechteck hinzu.
DDOVER_ALPHADEST
Veraltet.
DDOVER_ALPHADESTCONSTOVERRIDE
Verwendet den dwAlphaDestConst-Member der DDOVERLAYFX-Struktur als Ziel-Alphakanal für diese Überlagerung.
DDOVER_ALPHADESTNEG
Gibt an, dass die Zieloberfläche transparenter wird, wenn der Alphawert zunimmt (0 ist undurchsichtig).
DDOVER_ALPHADESTSURFACEOVERRIDE
Verwendet das lpDDSAlphaDest-Element der DDOVERLAYFX-Struktur als Alphakanalziel für diese Überlagerung.
DDOVER_ALPHAEDGEBLEND
Verwendet den dwAlphaEdgeBlend-Member der DDOVERLAYFX-Struktur als Alphakanal für die Ränder des Bilds, die die Farbschlüsselfarben umranden.
DDOVER_ALPHASRC
Verwendet entweder die Alphainformationen im Pixelformat oder die Alphakanaloberfläche, die an die Quelloberfläche angefügt ist, als Quell-Alphakanal für diese Überlagerung.
DDOVER_ALPHASRCCONSTOVERRIDE
Verwendet den dwAlphaSrcConst-Member der DDOVERLAYFX-Struktur als Quell-Alphakanal für diese Überlagerung.
DDOVER_ALPHASRCNEG
Gibt an, dass die Quelloberfläche transparenter wird, wenn der Alphawert zunimmt (0 ist undurchsichtig).
DDOVER_ALPHASRCSURFACEOVERRIDE
Verwendet den lpDDSAlphaSrc-Member der DDOVERLAYFX-Struktur als Alphakanalquelle für diese Überlagerung.
DDOVER_ARGBSCALEFACTORS
Neu für DirectX 7.0. Gibt an, dass die DDOVERLAYFX-Struktur gültige ARGB-Skalierungsfaktoren enthält.
DDOVER_AUTOFLIP
Wird automatisch auf die nächste Oberfläche in der Flipping-Kette gedreht, wenn ein Videoport VSYNC auftritt.
DDOVER_BOB
Zeigt jedes Feld des Interlaced-Videostreams einzeln an, ohne dass Artefakte angezeigt werden.
DDOVER_BOBHARDWARE
Bob-Vorgänge werden mithilfe von Hardware und nicht mithilfe von Software ausgeführt oder emuliert. Dieses Flag muss mit dem flag DDOVER_BOB verwendet werden.
DDOVER_DDFX
Verwendet die FX-Überlagerungsflags im lpDDOverlayFx-Parameter , um spezielle Überlagerungseffekte zu definieren.
DDOVER_DEGRADEARGBSCALING
Neu für DirectX 7.0. ARGB-Skalierungsfaktoren können entsprechend den Treiberfunktionen herabgestuft werden.
DDOVER_HIDE
Deaktiviert diese Überlagerung.
DDOVER_INTERLEAVED
Der Oberflächenspeicher besteht aus überlappenden Feldern.
DDOVER_KEYDEST
Verwendet den Farbschlüssel, der der Zieloberfläche zugeordnet ist.
DDOVER_KEYDESTOVERRIDE
Verwendet den dckDestColorkey-Member der DDOVERLAYFX-Struktur als Farbschlüssel für die Zieloberfläche.
DDOVER_KEYSRC
Verwendet den Farbschlüssel, der der Quelloberfläche zugeordnet ist.
DDOVER_KEYSRCOVERRIDE
Verwendet den dckSrcColorkey-Member der DDOVERLAYFX-Struktur als Farbschlüssel für die Quelloberfläche.
DDOVER_OVERRIDEBOBWEAVE
Bob- und Web-Entscheidungen sollten nicht von anderen Schnittstellen überschrieben werden.
DDOVER_REFRESHALL
Zeichnet die gesamte Oberfläche auf einer emulierten überlagerten Oberfläche neu.
DDOVER_REFRESHDIRTYRECTS
Zeichnet alle modifiziert Rechtecke auf einer emulierten überlagerten Oberfläche neu.
DDOVER_SHOW
Aktiviert diese Überlagerung.
[in] unnamedParam5
Ein Zeiger auf die DDOVERLAYFX-Struktur , die die zu verwendenden Effekte beschreibt. Kann NULL sein, wenn das flag DDOVER_DDFX nicht angegeben ist.
Rückgabewert
Wenn die Methode erfolgreich ist, wird der Rückgabewert DD_OK.
Wenn ein Fehler auftritt, kann die -Methode einen der folgenden Fehlerwerte zurückgeben:
- 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
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | ddraw.h |
Bibliothek | Ddraw.lib |
DLL | Ddraw.dll |