Added in new error reporting mechanism and used buffersubdata instead of mapdata to update VBO.