Metodo IDirectDrawSurface7::BltFast (ddraw.h)
Esegue una copia di origine bitblt o bitblt trasparente usando una chiave di colore di origine o una chiave di colore di destinazione.
Sintassi
HRESULT BltFast(
[in] DWORD unnamedParam1,
[in] DWORD unnamedParam2,
[in] LPDIRECTDRAWSURFACE7 unnamedParam3,
[in] LPRECT unnamedParam4,
[in] DWORD unnamedParam5
);
Parametri
[in] unnamedParam1
Coordinata x da bitblt a sulla superficie di destinazione.
[in] unnamedParam2
Coordinata y da bitblt a sulla superficie di destinazione.
[in] unnamedParam3
Puntatore all'interfaccia IDirectDrawSurface7 per l'oggetto DirectDrawSurface che rappresenta l'origine del bitblt.
[in] unnamedParam4
Puntatore a una struttura RECT che definisce i punti superiore sinistro e inferiore destro del rettangolo da bitblt dall'area di origine.
[in] unnamedParam5
Tipo di trasferimento. I trasferimenti seguenti sono definiti:
DDBLTFAST_DESTCOLORKEY
Bitblt trasparente che usa la chiave di colore di destinazione.
DDBLTFAST_NOCOLORKEY
Un bitblt di copia normale senza trasparenza.
DDBLTFAST_SRCCOLORKEY
Bitblt trasparente che usa la chiave di colore di origine.
DDBLTFAST_WAIT
Rinvia il messaggio DDERR_WASSTILLDRAWING se il bitbltter è occupato e restituisce non appena il bitblt può essere configurato o si verifica un altro errore.
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_EXCEPTION
- DDERR_GENERIC
- DDERR_INVALIDOBJECT
- DDERR_INVALIDPARAMS
- DDERR_INVALIDRECT
- DDERR_NOBLTHW
- DDERR_SURFACEBUSY
- DDERR_SURFACELOST
- DDERR_UNSUPPORTED
- DDERR_WASSTILLDRAWING
Commenti
BltFast tenta sempre un blit asincrono se è supportato dall'hardware.
BltFast funziona solo sulle superfici di memoria di visualizzazione e non può ritagliarsi quando esegue un'operazione bitblt. Se si usa questo metodo su una superficie con un clipper collegato, la chiamata ha esito negativo e il metodo restituisce DDERR_UNSUPPORTED.
L'implementazione software di IDirectDrawSurface7::BltFast è più veloce del metodo IDirectDrawSurface7::Blt . Tuttavia, non esiste alcuna differenza di velocità tra i due se viene usato l'hardware di visualizzazione.
In genere, IDirectDrawSurface7::BltFast restituisce immediatamente un errore se il bitbltter è occupato e il bitblt non può essere configurato. È possibile usare il flag di DDBLTFAST_WAIT, tuttavia, se si vuole che questo metodo non venga restituito fino a quando il bitblt può essere configurato o si verifica un altro errore.
Requisiti
Piattaforma di destinazione | Windows |
Intestazione | ddraw.h |
Libreria | Ddraw.lib |
DLL | Ddraw.dll |