SANiK, on Jun 23 2006, 07:58 PM, said:
Transparency - you mentioned transparency before and said that you employed the VDP1 to pull it off. I'm basicly asking the same question as Borisz which was probably missed:
"What I'd like to know is - how in the heck did you make proper transparent, non-meshed polygons on the Saturn?
Can you take pictures of that?"
Transparency is said to be super-slow on the Saturn, and I'm wondering if you devised a new means to achieve it that was faster, or if you used the same old method =O
When you say meshed, im assuming the mode where every other pixel is simply not drawn, like this;
X-X-X-X-
-X-X-X-X
X-X-X-X-
-X-X-X-X
X-X-X-X-
-X-X-X-X
X-X-X-X-
-X-X-X-X
where the x's are the only pixels drawn for a 8x8 pixel sprite/polygon.
Yes this method was ugly and sucked, causing several 3rd party publishers to not even bother developing for the saturn because multilayered transparency doesn't work with this technique or looks horrible.
Now you could enable normal transparency on quads, but due to the rasterization hardware, you'd get double transparency artifacts that would crawl across the polygon as it's vertices moved.
One of the techniques devised to allow transparent untextured 'n-gons' on vdp1 (yes n-gons) with no visible artifacts was to transform a virtual convex polygon and project it to screenspace, then construct the screenspace rasterization gradients. For each scanline conversion of the polygon, these gradients would then be converted into 1 pixel tall sprites (not rotated obviously since we're using sprites to render 'spans') tinted with the appropriate color and drawn with normal transparency, not using the ugly meshed technique.
Some other tricks to speed things up were to chop the vertical resolution of the scan conversion in half, creating slightly chunky edges on the transparent polys, using 2 pixel tall sprites. Pretty sure that trick is visible in burning rangers in a couple spots, just look for some transparent polys with chunky edges.
A few other flavors using gouraud shaded transparent lines were done for transparent gouraud shaded n-gons iirc.
The fine details of the textured transparent quad version escape me at the moment, I do remember one variation where if only one transparent color was needed and the other parts were opaque.
The poly was done as 2 pass render ( 2 quads sorted as one poly against their neighbors, always drawn in the same order), 1st 'pass' done with the transparent base color tint, then the opaque texture overlay with tranparency fully on for the parts where the transparent tint was supposed to show through - such as a textured frame around a plate glass window. The artifacting on the 2nd pass wasn't noticable because the transparency was effectively treated as 1bit so you wouldnt see strange double alpha pixels that are noticable with variable alpha textured quads.
This post has been edited by ChristinaCoffin: 07 July 2006 - 01:19 AM