Pass the right texture list to Tree.Setup.  Pull the foliage and vine textures from the global list in drawScene (even though they aren't used).  Save and restore more parts of the rendering context in Tree.Setup (current texture unit, bound texture object), and rename "tex" to "new_tex".  Set up the texture uniform attribute correctly in Setup (rebinding textures as draw*Texture_ functions are called).  Send the right texture object to drawVineTexture_ (was using the wrong size).