Método IDirectDrawSurface7::BltFast (ddraw.h)
Realiza una copia de origen bitblt o bitblt transparente mediante una clave de color de origen o una clave de color de destino.
Sintaxis
HRESULT BltFast(
[in] DWORD unnamedParam1,
[in] DWORD unnamedParam2,
[in] LPDIRECTDRAWSURFACE7 unnamedParam3,
[in] LPRECT unnamedParam4,
[in] DWORD unnamedParam5
);
Parámetros
[in] unnamedParam1
Coordenada x a la que se va a bitblt en la superficie de destino.
[in] unnamedParam2
Coordenada y a la que se va a bitblt en la superficie de destino.
[in] unnamedParam3
Puntero a la interfaz IDirectDrawSurface7 del objeto DirectDrawSurface que es el origen del bitblt.
[in] unnamedParam4
Puntero a una estructura RECT que define los puntos superior izquierdo e inferior derecho del rectángulo a bitblt desde la superficie de origen.
[in] unnamedParam5
Tipo de transferencia. Se definen las siguientes transferencias:
DDBLTFAST_DESTCOLORKEY
Bitblt transparente que usa la clave de color de destino.
DDBLTFAST_NOCOLORKEY
Un bitblt de copia normal sin transparencia.
DDBLTFAST_SRCCOLORKEY
Bitblt transparente que usa la clave de color de origen.
DDBLTFAST_WAIT
Pospone el mensaje de DDERR_WASSTILLDRAWING si el bitbltter está ocupado y devuelve tan pronto como se pueda configurar el bitblt u otro error.
Valor devuelto
Si el método se realiza correctamente, el valor devuelto se DD_OK.
Si se produce un error, el método puede devolver uno de los siguientes valores de error:
- DDERR_EXCEPTION
- DDERR_GENERIC
- DDERR_INVALIDOBJECT
- DDERR_INVALIDPARAMS
- DDERR_INVALIDRECT
- DDERR_NOBLTHW
- DDERR_SURFACEBUSY
- DDERR_SURFACELOST
- DDERR_UNSUPPORTED
- DDERR_WASSTILLDRAWING
Comentarios
BltFast siempre intenta una ranura asincrónica si es compatible con el hardware.
BltFast solo funciona en superficies de memoria para mostrar y no se puede recortar cuando realiza una operación bitblt. Si usa este método en una superficie con un clipper conectado, se produce un error en la llamada y el método devuelve DDERR_UNSUPPORTED.
La implementación de software de IDirectDrawSurface7::BltFast es 10% más rápida que el método IDirectDrawSurface7::Blt . Sin embargo, no hay ninguna diferencia de velocidad entre los dos si se usa hardware de pantalla.
Normalmente, IDirectDrawSurface7::BltFast devuelve inmediatamente un error si el bitbltter está ocupado y el bitblt no se puede configurar. Sin embargo, puede usar la marca DDBLTFAST_WAIT si desea que este método no vuelva hasta que se pueda configurar el bitblt u se produzca otro error.
Requisitos
Plataforma de destino | Windows |
Encabezado | ddraw.h |
Library | Ddraw.lib |
Archivo DLL | Ddraw.dll |