Advertisement
gmfreaky

Untitled

Apr 24th, 2012
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.21 KB | None | 0 0
  1. package nl.sonware.opengltest;
  2.  
  3. import java.nio.FloatBuffer;
  4. import java.nio.IntBuffer;
  5.  
  6. import org.lwjgl.BufferUtils;
  7. import org.lwjgl.opengl.GL12;
  8.  
  9. import static org.lwjgl.opengl.GL11.*;
  10. import static org.lwjgl.opengl.ARBVertexBufferObject.*;
  11.  
  12. public class Block {
  13.     int bufferIndex;
  14.     int bufferSize;
  15.     Block() {
  16.        
  17.         float[] array = new float[] {
  18.                 -1,-1,1,
  19.                 1, -1,1,
  20.                 1, 1, 1,
  21.                 -1,1, 1,
  22.                
  23.                 -1,-1,-1,
  24.                 1, -1,-1,
  25.                 1,  1,-1,
  26.                 -1, 1,-1,
  27.         };
  28.        
  29.         FloatBuffer buffer = BufferUtils.createFloatBuffer(array.length);
  30.         buffer.put(array);
  31.         buffer.flip();
  32.         bufferSize = buffer.capacity();
  33.        
  34.         bufferIndex = glGenBuffersARB();
  35.        
  36.         glBindBufferARB(GL_ARRAY_BUFFER_ARB, bufferIndex);
  37.         glBufferDataARB(GL_ARRAY_BUFFER_ARB, buffer, GL_STATIC_DRAW_ARB);
  38.        
  39.         System.out.println("Created bufferobject, bufferIndex = " + bufferIndex);
  40.     }
  41.    
  42.     public void render() {
  43.        
  44.         glBindBufferARB(GL_ARRAY_BUFFER_ARB, bufferIndex);
  45.        
  46.         glEnableClientState(GL_VERTEX_ARRAY);
  47.         glVertexPointer(3,GL_FLOAT,0,0);
  48.        
  49.         glDrawElements(GL_QUADS, bufferSize/3, GL_UNSIGNED_BYTE, 0);
  50.        
  51.         glBindBufferARB(GL_ARRAY_BUFFER_ARB, 0);
  52.        
  53.         System.out.println("buffersize = " + bufferSize);
  54.     }
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement