commit 89cacceb55457d91935b27054027f66534e0c4ff
Author: LeszekKoltunski <leszek@koltunski.pl>
Date:   Mon Apr 14 18:03:59 2025 +0200

    minor

diff --git a/build.gradle b/build.gradle
index 6499da0..8dddd55 100644
--- a/build.gradle
+++ b/build.gradle
@@ -12,6 +12,11 @@ android {
     defaultConfig {
         minSdkVersion 21
         targetSdkVersion 34
+        externalNativeBuild {
+            cmake {
+                cppFlags ''
+            }
+        }
     }
 
     buildTypes {
@@ -29,4 +34,10 @@ android {
         sourceCompatibility JavaVersion.VERSION_11
         targetCompatibility JavaVersion.VERSION_11
     }
+    externalNativeBuild {
+        cmake {
+            path file('src/main/cpp/CMakeLists.txt')
+            version '3.22.1'
+        }
+    }
 }
diff --git a/src/main/java/org/distorted/library/main/InternalBuffer.java b/src/main/java/org/distorted/library/main/InternalBuffer.java
index 10c9f48..904f81e 100644
--- a/src/main/java/org/distorted/library/main/InternalBuffer.java
+++ b/src/main/java/org/distorted/library/main/InternalBuffer.java
@@ -48,6 +48,20 @@ public class InternalBuffer extends InternalObject
   private final int mTarget, mUsage;
   private Buffer mBuffer;
 
+///////////////////////////////////////////////////////////////////////////////////////////////////
+
+  public InternalBuffer()
+    {
+    super(InternalObject.TYPE_USER, InternalObject.STORAGE_PRIVATE );
+
+    mIndex  = new int[1];
+    mTarget = GLES30.GL_UNIFORM_BUFFER;
+    mUsage  = GLES30.GL_STATIC_DRAW;
+    mBuffer = null;
+    mSize   = 0;
+    mStatus = RECREATE;
+    }
+
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
   public InternalBuffer(int target, int usage)
diff --git a/src/main/java/org/distorted/library/mesh/MeshSphere.java b/src/main/java/org/distorted/library/mesh/MeshSphere.java
index ed06b12..65578aa 100644
--- a/src/main/java/org/distorted/library/mesh/MeshSphere.java
+++ b/src/main/java/org/distorted/library/mesh/MeshSphere.java
@@ -20,10 +20,10 @@
 
 package org.distorted.library.mesh;
 
-///////////////////////////////////////////////////////////////////////////////////////////////////
-
 import org.distorted.library.main.DistortedLibrary;
 
+///////////////////////////////////////////////////////////////////////////////////////////////////
+
 /**
  * Create a Mesh which approximates a sphere.
  * <p>
diff --git a/src/main/java/org/distorted/library/mesh/MeshSquare.java b/src/main/java/org/distorted/library/mesh/MeshSquare.java
index f4ef9f8..41566ca 100644
--- a/src/main/java/org/distorted/library/mesh/MeshSquare.java
+++ b/src/main/java/org/distorted/library/mesh/MeshSquare.java
@@ -20,10 +20,10 @@
 
 package org.distorted.library.mesh;
 
-///////////////////////////////////////////////////////////////////////////////////////////////////
-
 import org.distorted.library.main.DistortedLibrary;
 
+///////////////////////////////////////////////////////////////////////////////////////////////////
+
 /**
  * Create a flat, rectangular grid.
  * <p>
diff --git a/src/main/java/org/distorted/library/mesh/MeshTriangle.java b/src/main/java/org/distorted/library/mesh/MeshTriangle.java
index bf86e74..386ef3c 100644
--- a/src/main/java/org/distorted/library/mesh/MeshTriangle.java
+++ b/src/main/java/org/distorted/library/mesh/MeshTriangle.java
@@ -20,10 +20,10 @@
 
 package org.distorted.library.mesh;
 
-///////////////////////////////////////////////////////////////////////////////////////////////////
-
 import org.distorted.library.main.DistortedLibrary;
 
+///////////////////////////////////////////////////////////////////////////////////////////////////
+
 /**
  * Create a Mesh which approximates a triangle with vertices at (-0.5,-0.5),(+0.5,-0.5),(0.0,0.5)
  */
diff --git a/src/main/java/org/distorted/library/uniformblock/UniformBlockAssociation.java b/src/main/java/org/distorted/library/uniformblock/UniformBlockAssociation.java
index df4dfc6..c2ffe2f 100644
--- a/src/main/java/org/distorted/library/uniformblock/UniformBlockAssociation.java
+++ b/src/main/java/org/distorted/library/uniformblock/UniformBlockAssociation.java
@@ -20,8 +20,6 @@
 
 package org.distorted.library.uniformblock;
 
-import android.opengl.GLES30;
-
 import org.distorted.library.main.DistortedLibrary;
 import org.distorted.library.main.InternalBuffer;
 import org.distorted.library.mesh.MeshBase;
@@ -58,7 +56,7 @@ public class UniformBlockAssociation
       mAssociations[mStride*i+LOC_EQU] = i;
       }
 
-    mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
+    mUBO = new InternalBuffer();
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -71,7 +69,7 @@ public class UniformBlockAssociation
     mAssociations= new int[size];
     System.arraycopy(original.mAssociations, 0, mAssociations, 0, size);
 
-    mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
+    mUBO = new InternalBuffer();
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/library/uniformblock/UniformBlockCenter.java b/src/main/java/org/distorted/library/uniformblock/UniformBlockCenter.java
index 74929ce..f42bcaa 100644
--- a/src/main/java/org/distorted/library/uniformblock/UniformBlockCenter.java
+++ b/src/main/java/org/distorted/library/uniformblock/UniformBlockCenter.java
@@ -20,8 +20,6 @@
 
 package org.distorted.library.uniformblock;
 
-import android.opengl.GLES30;
-
 import org.distorted.library.main.InternalBuffer;
 import org.distorted.library.mesh.MeshBase;
 
@@ -43,7 +41,7 @@ public class UniformBlockCenter
     {
     mMax  = MeshBase.getMaxEffComponents();
     mArray= new float[4*mMax];
-    mUBO  = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
+    mUBO  = new InternalBuffer();
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -54,7 +52,7 @@ public class UniformBlockCenter
     int size = original.mArray.length;
     mArray= new float[size];
     System.arraycopy(original.mArray, 0, mArray, 0, size);
-    mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
+    mUBO = new InternalBuffer();
     }
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/main/java/org/distorted/library/uniformblock/UniformBlockFloatUniforms.java b/src/main/java/org/distorted/library/uniformblock/UniformBlockFloatUniforms.java
index c638973..6ddae5a 100644
--- a/src/main/java/org/distorted/library/uniformblock/UniformBlockFloatUniforms.java
+++ b/src/main/java/org/distorted/library/uniformblock/UniformBlockFloatUniforms.java
@@ -20,8 +20,6 @@
 
 package org.distorted.library.uniformblock;
 
-import android.opengl.GLES30;
-
 import org.distorted.library.main.DistortedLibrary;
 import org.distorted.library.main.InternalBuffer;
 
@@ -50,7 +48,7 @@ public class UniformBlockFloatUniforms
 
     if( mReallyUseUBO )
       {
-      mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
+      mUBO = new InternalBuffer();
       }
     }
 
@@ -67,7 +65,7 @@ public class UniformBlockFloatUniforms
 
     if( mReallyUseUBO )
       {
-      mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
+      mUBO = new InternalBuffer();
       }
     }
 
diff --git a/src/main/java/org/distorted/library/uniformblock/UniformBlockIntUniforms.java b/src/main/java/org/distorted/library/uniformblock/UniformBlockIntUniforms.java
index a5355b5..614ea86 100644
--- a/src/main/java/org/distorted/library/uniformblock/UniformBlockIntUniforms.java
+++ b/src/main/java/org/distorted/library/uniformblock/UniformBlockIntUniforms.java
@@ -20,8 +20,6 @@
 
 package org.distorted.library.uniformblock;
 
-import android.opengl.GLES30;
-
 import org.distorted.library.effect.Effect;
 import org.distorted.library.main.DistortedLibrary;
 import org.distorted.library.main.InternalBuffer;
@@ -50,7 +48,7 @@ public class UniformBlockIntUniforms
 
     if( mReallyUseUBO )
       {
-      mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
+      mUBO = new InternalBuffer();
       }
     }
 
@@ -67,7 +65,7 @@ public class UniformBlockIntUniforms
 
     if( mReallyUseUBO )
       {
-      mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
+      mUBO = new InternalBuffer();
       }
     }
 
