I'm having a little trouble getting transparency to work properly. Hopefully someone can see what I am doing wrong.
Ok, so first, I created a .png image in Photoshop for the glow effect. Here is a screen shot, showing that the image has transparency (click on it to download the actual png image):

The JavaDocs say that a texture can have an alpha channel for transparency when using OpenGL hardware or OpenGL software modes. Does a .png image qualify, or is there another format I should use?
Next I load the texture into jPCT, specifying that there is an alpha channel:
texturePath = "Textures/WhiteGlow.png";
TextureManager.getInstance().addTexture( "Firefly Glow",
new Texture( getClass().getClassLoader().
getResourceAsStream( texturePath ),
true ) );
I use OpenGL software mode:
buffer = new FrameBuffer( width, height, FrameBuffer.SAMPLINGMODE_NORMAL );
I create the glow Object3D:
shine = new Object3D( 2 );
float offset = 200 * scaler;
float zoffset = 40 * scaler;
shine.addTriangle( new SimpleVector( -offset, -offset, -zoffset ), 0, 0,
new SimpleVector( -offset, offset, -zoffset ), 0, 1,
new SimpleVector( offset, offset, -zoffset ), 1, 1,
TextureManager.getInstance().getTextureID(
"Firefly Glow" ) );
shine.addTriangle( new SimpleVector( offset, offset, -zoffset ), 1, 1,
new SimpleVector( offset, -offset, -zoffset ), 1, 0,
new SimpleVector( -offset, -offset, -zoffset ), 0, 0,
TextureManager.getInstance().getTextureID(
"Firefly Glow" ) );
shine.setBillboarding( Object3D.BILLBOARDING_ENABLED );
shine.setTransparency( 0 ); // I tried various different values here.
shine.setTransparencyMode( Object3D.TRANSPARENCY_MODE_ADD );
shine.build();
world.addObject( shine );
The texture seems to act like a normal object with transparency (i.e. it is not taking into account the .png image's transparency). Here is an applet demonstrating the undesireable result:
http://www.paulscode.com/source/Glowing/Am I missing a step somewhere, or do I need to use a different image format or something?