Destrovi4 icon

VertixPointer

Destrovi4 | PRO | 12/30/12 07:42:15 PM UTC | 0 ⭐ | 193 👁️ | Never ⏰ | []
Java |

990 B

|

None

|

0 👍

/

0 👎

package destr.jogl.pointer;
 
import javax.media.opengl.GL;
import javax.media.opengl.GL2;
 
public class VertixPointer extends Pointer {
 
    public VertixPointer(int id) {
        super(id);
    }
    
    public VertixPointer(GL gl) {
        super(gl);
    }
 
    protected int count;
    
    @Override
    public void load(GL gl, float[] data){
        count = data.length / 3;
        super.load(gl, data);
    }
    
    @Override
    public void bind(GL gl) {
        GL2 gl2 = gl.getGL2();
        gl2.glEnableClientState(GL2.GL_VERTEX_ARRAY);
        gl2.glBindBuffer(GL2.GL_ARRAY_BUFFER, this.id);
        gl2.glVertexPointer(3, this.glType, 0, 0);
    }
 
    @Override
    public void unBind(GL gl) {
        GL2 gl2 = gl.getGL2();
        gl2.glBindBuffer(GL.GL_ARRAY_BUFFER, 0);
        gl2.glDisableClientState(GL2.GL_VERTEX_ARRAY);
    }
 
    @Override
    protected int getUsage() {
        return GL2.GL_STATIC_DRAW;
    }
 
    public void draw(GL gl, int mode) {
        gl.glDrawArrays(mode, 0, count);
    }
    
    public void draw(GL gl) {
        gl.glDrawArrays(GL.GL_TRIANGLES, 0, count);
    }
}

Comments