OpenGL is a a "stateful" library (so changes made by calls into OpenGL persist until changed again). So, something in the stage.draw()
call is changing the OpenGL state that makes your mesh's textures not work.
You might try moving the:
Gdx.gl.glEnable(GL10.GL_TEXTURE_2D);
call down with your:
texture.bind();
mesh.render(GL10.GL_TRIANGLES, 0, 3);
I didn't think the Stage would un-enable texturing, but it looks like it might.
Additionally, if you're trying to draw meshes directly from within an Actor's draw
callback, you may need to end
the batch
and restart around your non-batch drawing. The batch construction makes assumptions about OpenGL state between its begin
and end
calls, so it may get confused if you change the state. See libgdx - ShapeRenderer in Group.draw renders in wrong colour for a related example.