+ // GL_ARB_texture_env_combine
+ combinergb = m->texcombinergb[i] ? m->texcombinergb[i] : GL_MODULATE;
+ if (unit->combinergb != combinergb)
+ {
+ unit->combinergb = combinergb;
+ GL_ActiveTexture(i);
+ qglTexEnvi(GL_TEXTURE_ENV, GL_COMBINE_RGB_ARB, unit->combinergb);CHECKGLERROR
+ }
+ combinealpha = m->texcombinealpha[i] ? m->texcombinealpha[i] : GL_MODULATE;
+ if (unit->combinealpha != combinealpha)
+ {
+ unit->combinealpha = combinealpha;
+ GL_ActiveTexture(i);
+ qglTexEnvi(GL_TEXTURE_ENV, GL_COMBINE_ALPHA_ARB, unit->combinealpha);CHECKGLERROR
+ }
+ scale = max(m->texrgbscale[i], 1);
+ if (unit->rgbscale != scale)
+ {
+ GL_ActiveTexture(i);
+ qglTexEnvi(GL_TEXTURE_ENV, GL_RGB_SCALE_ARB, (unit->rgbscale = scale));CHECKGLERROR
+ }
+ scale = max(m->texalphascale[i], 1);
+ if (unit->alphascale != scale)
+ {
+ GL_ActiveTexture(i);
+ qglTexEnvi(GL_TEXTURE_ENV, GL_ALPHA_SCALE, (unit->alphascale = scale));CHECKGLERROR
+ }