orad++at++netvision.net.il
Tue, 9 Jul 96 19:29:29 PDT
I am trying to use screen-door transparency instead of blended transparency,
on multisampling-able machines (RE2 and iR). The code is IrisGL for RE2
and OpenGL for iR. The problem is the number of different transparency levels.
The first method is msalpha(MSA_MASK) (or glEnable(GL_SAMPLE_ALPHA_TO_MASK) in OpenGL)
the mask is derived automatically from incomming alpha.
Performer with pfTransparency PFTR_MS_ALPHA_MASK, is actually using this
method.
In this mode I get
only n+1 transparency levels (including the extremes),
where n is the number of samples in the multisample buffer.
On the other hand, with msmask() (or glSampleMaskSGIS() in OpenGL), where
the mask is speficied directly, I get 4*n transparency levels, by the 2x2
dithering done by the hardware.
Performer documentation actually states the 4*n (and the 2x2 dithering),
but this seems to work only with the second method.
Why can't the first method produce the same
number of transparency levels?
Another problem is specific to the iR. When doing the dithering, it uses
a bad pattern for the (1/2,1/2) dither. Instead of
x o
o x
which is used by the RE2, it uses
x x
o o
which is worse because it makes visible lines.
The tests were done on a RE2 running Irix5.3, and iR running Irix6.2
Please send answers also directly.
Thanks,
Moshe Nissim
Orad Hi-Tec Systems
=======================================================================
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
Submissions: info-performer++at++sgi.com
Admin. requests: info-performer-request++at++sgi.com
This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:53:09 PDT