Blits
A blit operation takes an arbitrary rectangular assignment of memory, defined by a source
rectangle, and copies it to another place in memory that is defined by a destination
rectangle. The Windowing API environment
provides a simple blitting implementation.
Blits are batch-processed in a separate command buffer that is associated with
a context. Consequently, if you intermix blits and other function calls, the
blits will execute first, then any delayed function calls. Flushing blits
does not flush the other commands. Buffers used as source or destination in
blits must have a SCREEN_NATIVE_USAGE.