On Thu, 21 Dec 2000, Brian S. Julin wrote:
> Andy is right in that an extension for simple rasterops would help a lot.
LibXMI has support for rasterops.
> We
> used to have a function called ggiStretchBlit, which scaled during the blit.
> A ggiBlendBlit family of functions that does infusion of color during the
> blit would also help you.
A generic multisource ROP blit would do the trick. Actually once
you have multisource you don't need a separate blit function, because you
can blit by selecting 'copy source bitmap' or whatever as the ROP and
pointing one of the sources to the start of video memory for the blit
source and the other source to a bitmap type descriptor.
> A lot of people come through wanting one particular
> function in this vein to go into to GGI core (and you came by wanting something
> that already was in the core :-). If they had the extension, that would
> give them a place to add such functions.
LibXMI is here, now, and the only thing missing is an intraface
API for accelerating the ROP drawing functions. Most of the enums for
more types of ROPs than DirectDraw has have been defined in the XMI
headers, although they are still preliminary and subject to thinko
revision |->. I have examples of ROP rectangle draws for texture mapping,
color key, destination alpha blend and texture mapping + alpha lightmap in
demos/blend.c.
Jon
---
'Cloning and the reprogramming of DNA is the first serious step in
becoming one with God.'
- Scientist G. Richard Seed