I just figured that one out
![](http://www.gamedev.net/community/forums/ubb/smile.gif)
When you enumerate texture formats (this is assuming 16 bit pixels) you should get one with a pixel format that has 4 bits in the bitmask for each r,g,b, and alpha component (4,4,4,4). By creating a texture using this pixelformat, and setting the 'a' component between 0x0 and 0xF (totally transparent vs. totally opaque), you get pixel by pixel transparency. This apparently only works right if you draw all the transparent polygons after all the totally solid ones, and draw the transparent ones from back to front while hopping one one foot (preferably the right foot, unless CULLMODE is set to clockwise).
This is assuming you're loading your own textures yourself (i.e., opening the BMP file and reading in the bytes), I dont know how you'd set the alpha using windows' bitmap functions. Also, there are other alpha formats besides the 4,4,4,4.
Hmm I had a site here with a good example of this alpha stuff...
AHA!
http://www-cs.intel.com/design/graphics/applnots/alphabln.htm
And the code is at:
http://www.intel.ie/design/graphics/740/swdev/sdk/ablend3d.htm
Yeah yeah its for an older card, but most of it still applies.
-ns