예제 #1
0
 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();
     }
 }
예제 #2
0
 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();
     }
 }
예제 #3
0
 public override void bindBuffer(int target, int buffer)
 {
     GL15.glBindBuffer(bufferTargetToGL[target], buffer);
 }
예제 #4
0
 public override int genBuffer()
 {
     return(GL15.glGenBuffers());
 }
예제 #5
0
 public override void deleteBuffer(int buffer)
 {
     GL15.glDeleteBuffers(buffer);
 }