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  
  [problem found] gldrawobject question  (Read 409 times)
0 Members and 1 Guest are viewing this topic.
Offline Therion__

Jr. Member
**

Posts: 80



« on: 2008-04-03 12:02:18 »

hello Smiley

i found a simple tutorial


i like to use the  gldrawobject and seach for
the right strategie to use it..
my problem is first when declaring
ov (vertex) and ono(vertex) i can use it with
byte and int but not a float var.

i didnt google/find a simple demo for it..something
like a mini demo using gldrawobject for a quad
without hundrets of confusing things around

vertex     = 0,0,0, 100,0,0, 100,0,100, 0,0,100;
normal    = 0,1,0, 0,1,0, 0,1,0, 0,1,0;
indices   = 0,1,2 ,2,3,0;
color        = 1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1; // ARGB(alpha)
textureuv  = 0.0,0.0, 1.0,0.0, 1.0,1.0, 0.0,1.0;
   
  gl.glTexCoordPointer   (2, GL.GL_FLOAT, 0, textureuv);
      gl.glNormalPointer     (GL.GL_FLOAT,0,normal);
      gl.glVertexPointer     (3, GL.GL_FLOAT, 0, vertex);
      gl.glColorPointer      (4, GL.GL_FLOAT, 0, color);
      gl.glDrawElements(GL.GL_QUADS, 4, GL.GL_UNSIGNED_INT, indices);
     ...




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  
37  
38  
39  
40  
41  
42  
43  
44  
45  
46  
//this are some of my trys

IntBuffer oc = BufferUtil.newIntBuffer(8000);         // color          (ok)
IntBuffer ot = BufferUtil.newIntBuffer(8000);          // texture uv  // FloatBuffer is not working?!
IntBuffer ov = BufferUtil.newIntBuffer(8000);          //vertex         // FloatBuffer is not working?!
IntBuffer ono = BufferUtil.newIntBuffer(8000);       //normals   // FloatBuffer is not working?!
IntBuffer indices = BufferUtil.newIntBuffer(8000); // indices (ok)


//vertex example
float[] varray = new float[(3*3) * 3];
     int k = 0;
     for (int ii=-1;ii<2;ii++)
     {
     for (int i=-1;i<2;i++)
     {
     varray[k++] = i*40;
     varray[k++] = 20;
     varray[k++] = ii*40;
     }
     }

     ov.put(varray);
     ov.rewind();

.. with color..texture and normals the same
and



display...
...
// *** Layer 0
     texture[9].bind();
      gl.glTexCoordPointer   (2, GL.GL_FLOAT, 0, ot);
      gl.glNormalPointer     (GL.GL_FLOAT,0,ono);
      gl.glVertexPointer     (3, GL.GL_FLOAT, 0, ov);
      gl.glColorPointer      (4, GL.GL_FLOAT, 0, oc);
      gl.glDrawElements(GL.GL_QUADS, flachen[0]*4, GL.GL_UNSIGNED_INT, indices);
     
      gl.glDisableClientState (GL.GL_VERTEX_ARRAY);
      gl.glDisableClientState (GL.GL_COLOR_ARRAY);
      gl.glDisableClientState (GL.GL_VERTEX_ARRAY);
     
      gl.glInterleavedArrays( GL.GL_T2F_C4F_N3F_V3F, 0, ov );
      gl.glDisable( GL.GL_BLEND );
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.108 seconds with 21 queries.