public override void ReadData( int offset, int length, IntPtr dest )
{
if ( useShadowBuffer )
{
// lock the buffer for reading
IntPtr src = shadowBuffer.Lock( offset, length, BufferLocking.ReadOnly );
// copy that data in there
Memory.Copy( src, dest, length );
// unlock the buffer
shadowBuffer.Unlock();
}
else
{
Gl.glBindBufferARB( Gl.GL_ARRAY_BUFFER_ARB, bufferID );
Gl.glGetBufferSubDataARB(
Gl.GL_ARRAY_BUFFER_ARB,
new IntPtr( offset ),
new IntPtr( length ),
dest ); // TAO 2.0
//Gl.glGetBufferSubDataARB(
// Gl.GL_ARRAY_BUFFER_ARB,
// offset,
// length,
// dest );
}
}