Vector Emulation

From: Paul Kahler <phkahler_at_Oakland.edu>
Date: Mon Oct 04 1999 - 18:23:45 EDT

All that talk about MAME reminded me of an idea I had a while back.

Neil did a good job of antialiasing vectors in Retrocade, and if I'm
not mistaken (I don't run any emulators at home - no time) I think MAME
is doing that too these days. It occured to me that the best vector
emulation would be to use some 3D card features:

Use 2 texture maps:

--==*==-- <-- a 1xN pixel map showing the vector "glow" - you'd
                 stretch this vertically to the length of the line

  ----- <-- an endcap to place at each end of a vector which
--------- includes the vector glow around the end
---===---
--=====--
--==*==--

You'd also need to render into some form of alpha buffer so overlap of
the fringes would be addative rather than obstructing things. Of course
you'd use the antialiasing capability of the card too!

I suspect a proper implementation of this would go a long way toward
making the B/W vector emulations look better. It doesn't address the
trails you leave, but I suspect carefull use of alpha buffers could
help (but 8 bits of alpha won't allow much precision in the decay).
Hmmm, dump the last N frames into separate buffers and blend according
to predefined formula... Hmmm tons of video RAM, but it could be an
option for people with SGIs.

Just needed to throw that one out there since I'll probably never do it.

PS. does anyone have any really basic OpenGL code (for a 3DFX mini-driver?)
to go to full screen 3D and draw a triangle or two?? This would help me with
some other things I'm up to.

Thanks,

--
 ___   __   _   _  _
|   \ /  \ | | | || |       phkahler@oakland.edu     Engineer/Programmer
|  _/| || || |_| || |__     " What makes someone care so much?
|_|  |_||_| \___/ |____)      for things another man can just ignore. " -S.H.
Received on Mon Oct 4 16:23:13 1999

This archive was generated by hypermail 2.1.8 : Fri Aug 01 2003 - 00:32:44 EDT