commit 96345c944a34402b507c3c2083ae2642e3e73b52
Author: Leszek Koltunski <leszek@koltunski.pl>
Date:   Sat Jun 6 22:31:55 2020 +0100

    Extend the MeshBase.setTextureMaps API so that we are able to set a single texture map to a single texture component, or a few consecutive at a time, not necessarily starting from component 0.

diff --git a/src/main/java/org/distorted/examples/deferredjob/DeferredJobRenderer.java b/src/main/java/org/distorted/examples/deferredjob/DeferredJobRenderer.java
index 751e139..8730ea8 100644
--- a/src/main/java/org/distorted/examples/deferredjob/DeferredJobRenderer.java
+++ b/src/main/java/org/distorted/examples/deferredjob/DeferredJobRenderer.java
@@ -204,7 +204,7 @@ class DeferredJobRenderer implements GLSurfaceView.Renderer
       MeshBase[] tmp = new MeshBase[2];
 
       tmp[0] = new MeshJoined(meshes);
-      tmp[0].setTextureMap(lTextureMaps);
+      tmp[0].setTextureMap(lTextureMaps,0);
 
       VertexEffectMove   effect0 = new VertexEffectMove  ( new Static3D(0,0,0.5f) );
       VertexEffectRotate effect1 = new VertexEffectRotate( new Static1D(180), new Static3D(1,0,0), new Static3D(0,0,0) );
@@ -217,7 +217,7 @@ class DeferredJobRenderer implements GLSurfaceView.Renderer
       tmp[0].apply(effect1);
 
       tmp[1] = tmp[0].copy(true);
-      tmp[1].setTextureMap(rTextureMaps);
+      tmp[1].setTextureMap(rTextureMaps,0);
 
       tmp[0].mergeEffComponents();
       tmp[1].mergeEffComponents();
diff --git a/src/main/java/org/distorted/examples/meshjoin/MeshJoinRenderer.java b/src/main/java/org/distorted/examples/meshjoin/MeshJoinRenderer.java
index 568275c..0bd2f8d 100644
--- a/src/main/java/org/distorted/examples/meshjoin/MeshJoinRenderer.java
+++ b/src/main/java/org/distorted/examples/meshjoin/MeshJoinRenderer.java
@@ -222,7 +222,7 @@ class MeshJoinRenderer implements GLSurfaceView.Renderer
       Static4D[] textureMaps = new Static4D[MESHES];
       for(int i=0; i<MESHES; i++) textureMaps[i] = new Static4D(i*0.25f,0.0f,0.25f,1.0f);
       MeshBase result = new MeshJoined(meshes);
-      result.setTextureMap(textureMaps);
+      result.setTextureMap(textureMaps,0);
 
       Static3D a0 = new Static3D(         0,        1,       0 );
       Static3D a1 = new Static3D(         0,  -1.0f/3, 2*SQ2/3 );
diff --git a/src/main/java/org/distorted/examples/singlemesh/SingleMeshRenderer.java b/src/main/java/org/distorted/examples/singlemesh/SingleMeshRenderer.java
index 7ae307d..7ce695c 100644
--- a/src/main/java/org/distorted/examples/singlemesh/SingleMeshRenderer.java
+++ b/src/main/java/org/distorted/examples/singlemesh/SingleMeshRenderer.java
@@ -358,7 +358,7 @@ class SingleMeshRenderer implements GLSurfaceView.Renderer
       for(int i=0; i<NUM_CUBITS; i++)
         {
         cubits[i].apply( new MatrixEffectMove(CUBIT_MOVES[i]), 1,0);
-        cubits[i].setTextureMap(TEXTURE_MAP[i]);
+        cubits[i].setTextureMap(TEXTURE_MAP[i],0);
         }
 
       MeshBase result = new MeshJoined(cubits);
