vertexarrays + multitexture

Hi!!

I use this code to display multitextured geometry with vertexarrays:

init() {
vbuffer = allocateDirectFloatBuffer(size);
tbuffer = allocateDirectFloatBuffer(size);
tbuffer2 = allocateDirectFloatBuffer(size);

    // geometry
  gl.glEnableClientState(GL.GL_VERTEX_ARRAY);
  gl.glVertexPointer(3, GL.GL_FLOAT, 0, vbuffer);


  // textures
  gl.glClientActiveTextureARB(GL.GL_TEXTURE0_ARB);
  gl.glEnableClientState(GL.GL_TEXTURE_COORD_ARRAY);
  gl.glTexCoordPointer(2, GL.GL_FLOAT, 0, tbuffer);
  gl.glBindTexture(GL.GL_TEXTURE_2D, textures[0]);

  gl.glClientActiveTextureARB(GL.GL_TEXTURE1_ARB);
  gl.glEnableClientState(GL.GL_TEXTURE_COORD_ARRAY);
  gl.glTexEnvi(GL.GL_TEXTURE_ENV, GL.GL_RGB_SCALE_ARB, 2);
  gl.glTexEnvi(GL.GL_TEXTURE_ENV, GL.GL_TEXTURE_ENV_MODE, GL.GL_COMBINE_ARB);
  gl.glTexCoordPointer(2, GL.GL_FLOAT, 0, tbuffer2);
  gl.glBindTexture(GL.GL_TEXTURE_2D, textures[1]);


  gl.glMatrixMode(GL.GL_TEXTURE);
  gl.glLoadIdentity();
  gl.glScalef(16, 16, 1);
  gl.glMatrixMode(GL.GL_MODELVIEW);

    fillBuffers();

}

display{
gl.glClientActiveTextureARB(GL.GL_TEXTURE0_ARB);
gl.glEnableClientState(GL.GL_TEXTURE_COORD_ARRAY);
gl.glClientActiveTextureARB(GL.GL_TEXTURE1_ARB);
gl.glEnableClientState(GL.GL_TEXTURE_COORD_ARRAY);

  gl.glDrawArrays(GL.GL_TRIANGLE_STRIP, 0, size/3);

  
  gl.glClientActiveTextureARB(GL.GL_TEXTURE1_ARB);
  gl.glDisableClientState(GL.GL_TEXTURE_COORD_ARRAY);
  gl.glClientActiveTextureARB(GL.GL_TEXTURE0_ARB);
  gl.glDisableClientState(GL.GL_TEXTURE_COORD_ARRAY);

}

I see just the second texture (texture[1]) with to much alpha. I do not know what I make wrong, a similar code with a display list works well.

thank you in advance

turbotank

already solved,

I just added gl.glActiveTextureARB(); befor gl.glClientActiveTextureARB(GL.GL_TEXTURE1_ARB);

turbotank