Blit Timing
When you copy pixels to a surface using either IDirectDrawSurface5::Blt or IDirectDrawSurface5::BltFast, the method might fail with DDERR_WASSTILLDRAWING because the hardware blitter was not ready to accept the command.
If your application has no urgent business to perform while waiting for the blitter to come back into a state of readiness, you can specify the DDBLT_WAIT flag in the dwFlags parameter of Blt, or the equivalent DDBLTFAST_WAIT flag for BltFast. The flag causes the method to wait until the blit can be handed off to the blitter (or until an error other than DDERR_WASSTILLDRAWING occurs).
Blt accepts another flag, DDBLT_ASYNC, that takes advantage of any hardware FIFO (first in, first out) queuing capabilities.
© 1992-2003 Microsoft Corporation. All rights reserved.