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  
  Vertex Array Sample??  (Read 1411 times)
0 Members and 1 Guest are viewing this topic.
Offline 2late4u

JGO n00b
*

Posts: 30


.....


« on: 2004-03-23 01:06:28 »

Hi to all ...
have someone some example of usign java.nio.buffer for this opengl calls?

gl.glVertexPointer(int p1, gl.GL_FLOAT, 0, Buffer);
gl.glTexCoordPointer(2, gl.GL_FLOAT, 0, Buffer);

how do i can fills the buffers?
and ... when i must do it?
Offline overnhet

Jr. Member
**

Posts: 90


Java games rock!


« Reply #1 on: 2004-03-23 01:51:15 »

1) allocate a direct, native ordered {Byte, Float, Int}Buffer per data set using net.java.games.jogl.util.BufferUtils

2) fill each buffer with data (using put(int[]) for example)

3) enable GL states with glEnableClientState(GL_VERTEX_ARRAY) and glEnableClientState(GL_TEXTURE_COORD_ARRAY)

4) bind buffers :
glVertexPointer(3, GL_INT, 0, vertices);
glColorPointer(3, GL_FLOAT, 0, colors);

5) draw with glDrawArrays (draw everything) or glDrawElements (draw only a subset)


Some comments :

* even though you can use a single buffer to store all your vertex, texture coord, color and normal data, it is IMO easier to keep them in separate buffers

* usually you'll only need to enable vertex array states once, in the init method

* when you bind a buffer, data can be copied but it is not a requirement ; therefore when you modify your buffer you must rebind it
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.084 seconds with 21 queries.