public override void setBufferData(int target, int size, Buffer buffer, int usage) { if (buffer is ByteBuffer) { GL15.glBufferData(bufferTargetToGL[target], getDirectBuffer(size, (ByteBuffer)buffer), bufferUsageToGL[usage]); } else if (buffer is IntBuffer) { GL15.glBufferData(bufferTargetToGL[target], getDirectBuffer(size, (IntBuffer)buffer), bufferUsageToGL[usage]); } else if (buffer is ShortBuffer) { GL15.glBufferData(bufferTargetToGL[target], getDirectBuffer(size, (ShortBuffer)buffer), bufferUsageToGL[usage]); } else if (buffer is FloatBuffer) { GL15.glBufferData(bufferTargetToGL[target], getDirectBuffer(size, (FloatBuffer)buffer), bufferUsageToGL[usage]); } else if (buffer == null) { GL15.glBufferData(bufferTargetToGL[target], size, bufferUsageToGL[usage]); } else { throw new System.ArgumentException(); } }
public override void setBufferSubData(int target, int offset, int size, Buffer buffer) { if (buffer is ByteBuffer) { GL15.glBufferSubData(bufferTargetToGL[target], offset, getDirectBuffer(size, (ByteBuffer)buffer)); } else if (buffer is IntBuffer) { GL15.glBufferSubData(bufferTargetToGL[target], offset, getDirectBuffer(size, (IntBuffer)buffer)); } else if (buffer is ShortBuffer) { GL15.glBufferSubData(bufferTargetToGL[target], offset, getDirectBuffer(size, (ShortBuffer)buffer)); } else if (buffer is FloatBuffer) { GL15.glBufferSubData(bufferTargetToGL[target], offset, getDirectBuffer(size, (FloatBuffer)buffer)); } else { throw new System.ArgumentException(); } }
public override void bindBuffer(int target, int buffer) { GL15.glBindBuffer(bufferTargetToGL[target], buffer); }
public override int genBuffer() { return(GL15.glGenBuffers()); }
public override void deleteBuffer(int buffer) { GL15.glDeleteBuffers(buffer); }