Hello
in the past I used the alpha value to set the transparence of a color:
gl2.glEnable(GL.GL_BLEND); // Turn Blending On
// set the color red, green, blue , alpha
gl2.glColor4f( color[1], color[2], color[3], color[0] );
this worked well
Now I changed my code and use vbo´s and DrawArrays(..) and it look like the alpha value is ignored.
Do I have to set something special when I create the ColorPointer ?
Thanks
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| static void vboTestOnlyDrawSeveralQuadStrip(GL2 gl2){ gl2.glEnable(GL.GL_BLEND); gl2.glShadeModel(GL2.GL_FLAT); for(int i=0; i<vboIndexArray.length/2; i++){ gl2.glEnableClientState( GL2.GL_VERTEX_ARRAY ); gl2.glEnableClientState( GL2.GL_COLOR_ARRAY ); gl2.glBindBuffer(GL2.GL_ARRAY_BUFFER, vboIndexArray[i]); gl2.glVertexPointer(3, GL2.GL_FLOAT, 0, 0); gl2.glBindBuffer(GL2.GL_ARRAY_BUFFER, vboIndexArray[i+(vboIndexArray.length/2)]); gl2.glColorPointer(4, GL2.GL_FLOAT, 0, 0); gl2.glDrawArrays(GL2.GL_QUAD_STRIP, 0,((intCountOfQuads * 2) + 2)); gl2.glBindBuffer(GL2.GL_ARRAY_BUFFER, 0); gl2.glDisableClientState( GL2.GL_COLOR_ARRAY ); gl2.glDisableClientState( GL2.GL_VERTEX_ARRAY ); } } |