Christian Rau addresses the right topic.
The reason glGenLists guarantees the ordering of the return value is a string drawing. The usage model wanted glListBase + glCallLists to allow simple
// ascii model // init asciiBase = glGenLists(128); // usage glListBase(asciiBase); glCallList(strlen(string), GL_UNSIGNED_BYTE, string);
For this usage model, you really need a range that needs to be contiguous. There was no such model designed for textures, so it was necessary to remove the required names, since it simplified the implementation of GL.
As an extra tidbit, note that glGen * calls are optional. Nothing bothers you:
glBindTexture(GL_TEXTURE_2D, 5);
source share