Once upon a time... If you go back to the documentation for older OpenGL versions, where the functionality that is now deprecated in the Core Profile is still documented, this will make sense. It used to be legal to pass values 1, 2, 3, 4 for internalFormat
, denoting the number of color components in the texture.
For example, this is the man page for glTexImage2D
in OpenGL 2.1: http://www.opengl.org/sdk/docs/man2/xhtml/glTexImage2D.xml. Under internalFormat
, it says:
Specifies the number of color components in the texture. Must be 1, 2, 3, or 4, or one of the following symbolic constants: ...