top | item 32113273

(no title)

danachow | 3 years ago

> included alpha channels

I would be very surprised by this. Raster ops, yes. Alpha channel image compositing operations, no way - that's an entirely whole nother level of complexity.

discuss

order

StillBored|3 years ago

Not sure why you are down voted, its a somewhat fair point.

So I looked it up, the 542x series in this article do support "transparency" blt operations, but it might be fair to call them raster ops rather than full blending. They would be be sufficient for the parallax scrolling Duke Nukem here was implementing, which was sorta my original point.

OTOH, full 32-bit ARGB support shows up in the Cirrus line of adapters with the next revision 543x, mostly for video overlay though, although the way its wired seems to leave a lot of open doors for interesting effects too.

And full blown alpha blending shows up one generation later in the 546x series.

So there is full hardware support by the mid 1990's in fairly low end HW/PCs at that point. I've said before on this board that alpha blending was going on all through the 1990's and there are various ways to "cheat" and speed up what is presented in '84 (https://dl.acm.org/doi/10.1145/964965.808606). Pulling my Copy of CGPnP off the shelf it says under compositing "since it is fairly easy to do". I give you a demo from '92 with real time apparent blended transparency: https://www.youtube.com/watch?v=pLJhtefcoPE see about 4 mins in. I sorta doubt this is the first case, but was one I vaguely remembered, since I was myself hacking these kinds of things with my schoolmates around that time as we tried to emulate what we saw others doing/etc. And none of us went into computer graphics or gaming oriented parts of the technology fields.

BTW: That demo notes it needs a 386+VGA, so we are talking late 1980's PC hardware.

rasz|3 years ago

Binary transparency :). 1992 Cirrus Logic GD5402 aka AVGA2 supported Masking.

http://www.vgamuseum.info/index.php/cpu/item/130-cirrus-logi... "D3 Selects the memory read data latches to be eight bytes wide, instead of the normal four bytes. This bit can be used in Write Mode 1, in order to rewrite 8 latched pixels (64 bits) back into display memory. This bit should be used in X8 addressing mode only."

= Set/Reset and Compare registers extended to full 8 bits and read/write mode 1 extended to 8 bytes at a time with extra foreground/background masks. If Im calculating correctly this means you can perform internal copies at 12-20MB/s and lines/pattern fills at 24-40MB/s