Java-Gaming.org Java4K winners: [ by our judges | by the community ]         
Featured games (67)
games approved by the League of Dukes
Games in Showcase (∞)
games submitted by our members



News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  Print  
  DrawArrays() GL_QUAD_STRIP, alpha value is ignored ???  (Read 942 times)
0 Members and 2 Guests are viewing this topic.
Offline blizzard

JGO n00b
*

Posts: 19



« on: 2011-10-17 04:45:04 »

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); // Turn Blending On
     
      //--- turn shade Model Flat On
     // eaxh quad is filled with one color defined by the last vertex
     gl2.glShadeModel(GL2.GL_FLAT);
     
       for(int i=0; i<vboIndexArray.length/2; i++){
          // define which Types of Elements are a allowed
         gl2.glEnableClientState( GL2.GL_VERTEX_ARRAY );
          gl2.glEnableClientState( GL2.GL_COLOR_ARRAY );
       
          //--- set the vertex pointer
         // bind the buffer, from this moment this specific buffer is used
         gl2.glBindBuffer(GL2.GL_ARRAY_BUFFER, vboIndexArray[i]);
          // Get the Position of the data in the memory
         gl2.glVertexPointer(3, GL2.GL_FLOAT, 0, 0);
         
          //--- set the color pointer
            // bind the buffer, from this moment this specific buffer is used
         gl2.glBindBuffer(GL2.GL_ARRAY_BUFFER, vboIndexArray[i+(vboIndexArray.length/2)]);
          gl2.glColorPointer(4, GL2.GL_FLOAT, 0, 0);
                 
          // draw the Buffer
         gl2.glDrawArrays(GL2.GL_QUAD_STRIP, 0,((intCountOfQuads * 2) + 2));      
       
          // unbind the buffer, by using 0
         gl2.glBindBuffer(GL2.GL_ARRAY_BUFFER, 0);      
       
          // Disable vertex arrays
         gl2.glDisableClientState( GL2.GL_COLOR_ARRAY );
          gl2.glDisableClientState( GL2.GL_VERTEX_ARRAY );      
       }
     
   }//end: void vboTestOnlyDrawSeveralQuadStrip(






Offline princec
« League of Dukes »

JGO Kernel
*****

Posts: 8076
Medals: 91


Eh? Who? What? ... Me?


« Reply #1 on: 2011-10-17 04:49:29 »

I don't see anywhere where you've specified what blending mode to use.

Cas Smiley

Offline blizzard

JGO n00b
*

Posts: 19



« Reply #2 on: 2011-10-17 05:08:38 »

Ah thank you that was a good hint ..

I forgot to copy 
gl2.glBlendFunc(GL.GL_SRC_ALPHA,GL.GL_ZERO);  // always drawn new

now it work :-)
thanks
Games published by our own members! Go get 'em!
Offline theagentd

JGO Wizard
****

Posts: 1392
Medals: 88



« Reply #3 on: 2011-10-17 05:10:19 »

That would discard the color already there? Isn't glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) the standard blending function for basic 2D blending? GL_ZERO would discard what is already there... >_<

There is no god.
Offline R.D.

Full Member
**

Posts: 122
Medals: 2


"For the last time, Hats ARE Awesome"


« Reply #4 on: 2011-10-26 08:19:00 »

Maybe he wants something like the DEPTH_TEST? So pixels with a smalle depth will simply be ignored? (Guess this good be used nicely in a map where you render the closest layer first and so on)

Offline theagentd

JGO Wizard
****

Posts: 1392
Medals: 88



« Reply #5 on: 2011-10-27 05:12:48 »

He seems to just want to do finalColor = color * alpha, so I think his problem is resolved already.

There is no god.
Pages: [1]
  Print  
 
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2011, Simple Machines Valid XHTML 1.0! Valid CSS!
Page created in 0.093 seconds with 20 queries.