IDirectDrawSurface7::Blt-Methode (ddraw.h)
Führt eine Bitblockübertragung (Bitblt) durch. Diese Methode unterstützt bei Bitblt-Vorgängen keine Z-Pufferung oder Alphamischung.
Syntax
HRESULT Blt(
[in] LPRECT unnamedParam1,
[in] LPDIRECTDRAWSURFACE7 unnamedParam2,
[in] LPRECT unnamedParam3,
[in] DWORD unnamedParam4,
[in] LPDDBLTFX unnamedParam5
);
Parameter
[in] unnamedParam1
Ein Zeiger auf eine RECT-Struktur , die die oberen linken und unteren rechten Punkte des Rechtecks definiert, auf die auf der Zieloberfläche bitbliert werden soll. Wenn dieser Parameter NULL ist, wird die gesamte Zieloberfläche verwendet.
[in] unnamedParam2
Ein Zeiger auf die IDirectDrawSurface7-Schnittstelle für das DirectDrawSurface-Objekt, das die Quelle des Bitblts ist.
[in] unnamedParam3
Ein Zeiger auf eine RECT-Struktur , die die oberen linken und unteren rechten Punkte des Rechtecks definiert, von der aus auf der Quelloberfläche bitbltiert werden soll. Wenn dieser Parameter NULL ist, wird die gesamte Quelloberfläche verwendet.
[in] unnamedParam4
Eine Kombination von Flags, die die gültigen Elemente der zugeordneten DDBLTFX-Struktur bestimmen, Farbschlüsselinformationen angeben oder spezielles Verhalten von der -Methode anfordern. Die folgenden Flags werden definiert:
Validierungsflags
DDBLT_COLORFILL
Verwendet das dwFillColor-Element der DDBLTFX-Struktur als RGB-Farbe, die das Zielrechteck auf der Zieloberfläche ausfüllt.
DDBLT_DDFX
Verwendet das dwDDFX-Element der DDBLTFX-Struktur , um die Effekte anzugeben, die für diese Bitblt verwendet werden sollen.
DDBLT_DDROPS
Verwendet das dwDDROP-Member der DDBLTFX-Struktur , um die Rastervorgänge (ROPS) anzugeben, die nicht Teil der Win32-API sind.
DDBLT_DEPTHFILL
Verwendet das dwFillDepth-Element der DDBLTFX-Struktur als Tiefenwert, mit dem das Zielrechteck auf der Ziel-Z-Pufferoberfläche gefüllt werden soll.
DDBLT_KEYDESTOVERRIDE
Verwendet das ddckDestColorkey-Element der DDBLTFX-Struktur als Farbtaste für die Zieloberfläche.
DDBLT_KEYSRCOVERRIDE
Verwendet das ddckSrcColorkey-Element der DDBLTFX-Struktur als Farbtaste für die Quelloberfläche.
DDBLT_ROP
Verwendet das dwROP-Element der DDBLTFX-Struktur für den ROP für diese Bitblt. Diese ROPs entsprechen den in der Win32-API definierten ROPs.
DDBLT_ROTATIONANGLE
Verwendet das dwRotationAngle-Element der DDBLTFX-Struktur als Drehwinkel (angegeben in 1/100s eines Grads) für die Oberfläche.
Farbschlüsselflaggen
DDBLT_KEYDEST
Verwendet die Farbtaste, die der Zieloberfläche zugeordnet ist.
DDBLT_KEYSRC
Verwendet die Farbtaste, die der Quelloberfläche zugeordnet ist.
Verhaltensflags
DDBLT_ASYNC
Führt diese Bitblt asynchron über die FIFO-Hardware (First In, First Out) in der empfangenen Reihenfolge aus. Wenn in der FIFO-Hardware kein Raum verfügbar ist, schlägt der Anruf fehl.
DDBLT_DONOTWAIT
Gibt ohne Bitbltting zurück und gibt auch DDERR_WASSTILLDRAWING zurück, wenn der Bitbltter ausgelastet ist.
DDBLT_WAIT
Verschiebt den DDERR_WASSTILLDRAWING Rückgabewert, wenn der Bitbltter ausgelastet ist, und gibt zurück, sobald die Bitblt eingerichtet werden kann oder ein anderer Fehler auftritt.
Veraltete und nicht unterstützte Flags
Alle DDBLT_ALPHA Flagwerte
Derzeit nicht implementiert.
Alle DDBLT_ZBUFFER Flagwerte
Diese Methode unterstützt derzeit keine z-fähigen Bitblt-Vorgänge. Keines der Flags, die mit "DDBLT_ZBUFFER" beginnen, wird unterstützt.
[in] unnamedParam5
Ein Zeiger auf die DDBLTFX-Struktur für die Bitblt.
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_GENERIC
- DDERR_INVALIDCLIPLIST
- DDERR_INVALIDOBJECT
- DDERR_INVALIDPARAMS
- DDERR_INVALIDRECT
- DDERR_NOALPHAHW
- DDERR_NOBLTHW
- DDERR_NOCLIPLIST
- DDERR_NODDROPSHW
- DDERR_NOMIRRORHW
- DDERR_NORASTEROPHW
- DDERR_NOROTATIONHW
- DDERR_NOSTRETCHHW
- DDERR_NOZBUFFERHW
- DDERR_SURFACEBUSY
- DDERR_SURFACELOST
- DDERR_UNSUPPORTED
- DDERR_WASSTILLDRAWING
Hinweise
Blt kann synchrone oder asynchrone Bitblts ausführen (letzteres ist das Standardverhalten). Diese Bitblts können vom Anzeigespeicher zum Anzeigespeicher, vom Anzeigespeicher zum Systemspeicher, vom Systemspeicher zum Anzeigespeicher oder vom Systemspeicher zum Systemspeicher auftreten. Die Bitblts können mithilfe von Quellfarbschlüsseln und Zielfarbschlüsseln ausgeführt werden. Wenn die Quell- und Zielrechtecke nicht die gleiche Größe aufweisen, wird ein beliebiges Dehnungs- oder Verkleinern ausgeführt.
In der Regel wird Blt sofort mit einem Fehler zurückgegeben, wenn der Bitbltter ausgelastet ist und die Bitblt nicht eingerichtet werden konnte. Geben Sie das flag DDBLT_WAIT an, um eine synchrone Bitblt anzufordern. Wenn Sie das DDBLT_WAIT-Flag einschließen, wartet Blt , bis die Bitblt eingerichtet werden kann oder ein anderer Fehler auftritt, bevor sie zurückgegeben wird.
RECT-Strukturen werden so definiert, dass die rechten und unteren Member exklusiv sind. Daher entspricht rechts minus links der Breite des Rechtecks, nicht 1 kleiner als die Breite.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | ddraw.h |
Bibliothek | Ddraw.lib |
DLL | Ddraw.dll |