PDA

View Full Version : Multiple passes alpha textures..



Sylvain
09-29-2000, 06:34 AM
Hi
I 've got probs with ALPHA textures when i want to emulate multitexturing purposes on older boards with 1.1 drivers... Is there any trick to do alpha blending in a proper way to get this cool perpixel opactity/alpha blending?? Of course everything works fine with 2 channels on 2 Tmus boards.. Moreover
Of course i really want to use 2 separate maps (1 texture, 1 mask 4bits | more )
GL_MAX_TEXTURES_UNITS_ARB returns 2 for the GeForce 256 & GF2 cards?? Is this a driver problem?? i was waiting for 4 TMU!!
Any help?
Note: multitexturing for color textures works fine but it's only a prob with Alpha tex.. http://www.opengl.org/discussion_boards/ubb/wink.gif

Firestorm
09-29-2000, 07:07 AM
Originally posted by Sylvain:
GL_MAX_TEXTURES_UNITS_ARB returns 2 for the GeForce 256 & GF2 cards?? Is this a driver problem?? i was waiting for 4 TMU!!
It's not a driver problem, the geforces only have 2 texture units.
The NV20 & NV2A however will have 4, dunno about NV25.. it'll have 4 or more tho
And the ATI Radeon has 3 to make things more complex to optimize for us programmer folk http://www.opengl.org/discussion_boards/ubb/wink.gif


[This message has been edited by Firestorm (edited 09-29-2000).]

DFrey
09-29-2000, 07:33 AM
No trick really, first draw the mask using an appropriate alpha test. Then blend in the second pass, using a depth test of GL_EQUAL. This assumes your polygons have already been depth sorted if they are partially transparent. Or if the effect you want is an opaque polygon, but with parts of one texture showing through parts of another, then you can just draw the polygon with the base texture, and then blend the overlaying texture with an alpha blend in the second pass.


[This message has been edited by DFrey (edited 09-29-2000).]