Condividi tramite


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

Vedi anche

IDirectDrawSurface7