Are texture environment settings binded to texture object in opengl, so I just need to BindTexture with the tex obj, no need to set those env parameters everytime I use it?
Yes, you got it.
oops, I find these words in the redbook:
“When a texture name is initially bound (used with glBindTexture()), a new texture object is created with default values for the texture image and texture properties. Subsequent calls to glTexImage*(), glTexSubImage*(), glCopyTexImage*(), glCopyTexSubImage*(), glTexParameter*(), and glPrioritizeTextures() store data in the texture object.”
it seems glTexEnv is not included. does it mean glTexEnv is not bound with tex object?
glTexParameter are per texture object.
glTexEnv is per texture unit, IIRC.