Revision 89cacceb
Added by Leszek Koltunski 8 months ago
| build.gradle | ||
|---|---|---|
| 12 | 12 |
defaultConfig {
|
| 13 | 13 |
minSdkVersion 21 |
| 14 | 14 |
targetSdkVersion 34 |
| 15 |
externalNativeBuild {
|
|
| 16 |
cmake {
|
|
| 17 |
cppFlags '' |
|
| 18 |
} |
|
| 19 |
} |
|
| 15 | 20 |
} |
| 16 | 21 |
|
| 17 | 22 |
buildTypes {
|
| ... | ... | |
| 29 | 34 |
sourceCompatibility JavaVersion.VERSION_11 |
| 30 | 35 |
targetCompatibility JavaVersion.VERSION_11 |
| 31 | 36 |
} |
| 37 |
externalNativeBuild {
|
|
| 38 |
cmake {
|
|
| 39 |
path file('src/main/cpp/CMakeLists.txt')
|
|
| 40 |
version '3.22.1' |
|
| 41 |
} |
|
| 42 |
} |
|
| 32 | 43 |
} |
| src/main/java/org/distorted/library/main/InternalBuffer.java | ||
|---|---|---|
| 48 | 48 |
private final int mTarget, mUsage; |
| 49 | 49 |
private Buffer mBuffer; |
| 50 | 50 |
|
| 51 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
| 52 |
|
|
| 53 |
public InternalBuffer() |
|
| 54 |
{
|
|
| 55 |
super(InternalObject.TYPE_USER, InternalObject.STORAGE_PRIVATE ); |
|
| 56 |
|
|
| 57 |
mIndex = new int[1]; |
|
| 58 |
mTarget = GLES30.GL_UNIFORM_BUFFER; |
|
| 59 |
mUsage = GLES30.GL_STATIC_DRAW; |
|
| 60 |
mBuffer = null; |
|
| 61 |
mSize = 0; |
|
| 62 |
mStatus = RECREATE; |
|
| 63 |
} |
|
| 64 |
|
|
| 51 | 65 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| 52 | 66 |
|
| 53 | 67 |
public InternalBuffer(int target, int usage) |
| src/main/java/org/distorted/library/mesh/MeshSphere.java | ||
|---|---|---|
| 20 | 20 |
|
| 21 | 21 |
package org.distorted.library.mesh; |
| 22 | 22 |
|
| 23 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
| 24 |
|
|
| 25 | 23 |
import org.distorted.library.main.DistortedLibrary; |
| 26 | 24 |
|
| 25 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
| 26 |
|
|
| 27 | 27 |
/** |
| 28 | 28 |
* Create a Mesh which approximates a sphere. |
| 29 | 29 |
* <p> |
| src/main/java/org/distorted/library/mesh/MeshSquare.java | ||
|---|---|---|
| 20 | 20 |
|
| 21 | 21 |
package org.distorted.library.mesh; |
| 22 | 22 |
|
| 23 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
| 24 |
|
|
| 25 | 23 |
import org.distorted.library.main.DistortedLibrary; |
| 26 | 24 |
|
| 25 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
| 26 |
|
|
| 27 | 27 |
/** |
| 28 | 28 |
* Create a flat, rectangular grid. |
| 29 | 29 |
* <p> |
| src/main/java/org/distorted/library/mesh/MeshTriangle.java | ||
|---|---|---|
| 20 | 20 |
|
| 21 | 21 |
package org.distorted.library.mesh; |
| 22 | 22 |
|
| 23 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
| 24 |
|
|
| 25 | 23 |
import org.distorted.library.main.DistortedLibrary; |
| 26 | 24 |
|
| 25 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
|
| 26 |
|
|
| 27 | 27 |
/** |
| 28 | 28 |
* Create a Mesh which approximates a triangle with vertices at (-0.5,-0.5),(+0.5,-0.5),(0.0,0.5) |
| 29 | 29 |
*/ |
| src/main/java/org/distorted/library/uniformblock/UniformBlockAssociation.java | ||
|---|---|---|
| 20 | 20 |
|
| 21 | 21 |
package org.distorted.library.uniformblock; |
| 22 | 22 |
|
| 23 |
import android.opengl.GLES30; |
|
| 24 |
|
|
| 25 | 23 |
import org.distorted.library.main.DistortedLibrary; |
| 26 | 24 |
import org.distorted.library.main.InternalBuffer; |
| 27 | 25 |
import org.distorted.library.mesh.MeshBase; |
| ... | ... | |
| 58 | 56 |
mAssociations[mStride*i+LOC_EQU] = i; |
| 59 | 57 |
} |
| 60 | 58 |
|
| 61 |
mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
|
|
| 59 |
mUBO = new InternalBuffer(); |
|
| 62 | 60 |
} |
| 63 | 61 |
|
| 64 | 62 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| ... | ... | |
| 71 | 69 |
mAssociations= new int[size]; |
| 72 | 70 |
System.arraycopy(original.mAssociations, 0, mAssociations, 0, size); |
| 73 | 71 |
|
| 74 |
mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
|
|
| 72 |
mUBO = new InternalBuffer(); |
|
| 75 | 73 |
} |
| 76 | 74 |
|
| 77 | 75 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| src/main/java/org/distorted/library/uniformblock/UniformBlockCenter.java | ||
|---|---|---|
| 20 | 20 |
|
| 21 | 21 |
package org.distorted.library.uniformblock; |
| 22 | 22 |
|
| 23 |
import android.opengl.GLES30; |
|
| 24 |
|
|
| 25 | 23 |
import org.distorted.library.main.InternalBuffer; |
| 26 | 24 |
import org.distorted.library.mesh.MeshBase; |
| 27 | 25 |
|
| ... | ... | |
| 43 | 41 |
{
|
| 44 | 42 |
mMax = MeshBase.getMaxEffComponents(); |
| 45 | 43 |
mArray= new float[4*mMax]; |
| 46 |
mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
|
|
| 44 |
mUBO = new InternalBuffer(); |
|
| 47 | 45 |
} |
| 48 | 46 |
|
| 49 | 47 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| ... | ... | |
| 54 | 52 |
int size = original.mArray.length; |
| 55 | 53 |
mArray= new float[size]; |
| 56 | 54 |
System.arraycopy(original.mArray, 0, mArray, 0, size); |
| 57 |
mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
|
|
| 55 |
mUBO = new InternalBuffer(); |
|
| 58 | 56 |
} |
| 59 | 57 |
|
| 60 | 58 |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
| src/main/java/org/distorted/library/uniformblock/UniformBlockFloatUniforms.java | ||
|---|---|---|
| 20 | 20 |
|
| 21 | 21 |
package org.distorted.library.uniformblock; |
| 22 | 22 |
|
| 23 |
import android.opengl.GLES30; |
|
| 24 |
|
|
| 25 | 23 |
import org.distorted.library.main.DistortedLibrary; |
| 26 | 24 |
import org.distorted.library.main.InternalBuffer; |
| 27 | 25 |
|
| ... | ... | |
| 50 | 48 |
|
| 51 | 49 |
if( mReallyUseUBO ) |
| 52 | 50 |
{
|
| 53 |
mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
|
|
| 51 |
mUBO = new InternalBuffer(); |
|
| 54 | 52 |
} |
| 55 | 53 |
} |
| 56 | 54 |
|
| ... | ... | |
| 67 | 65 |
|
| 68 | 66 |
if( mReallyUseUBO ) |
| 69 | 67 |
{
|
| 70 |
mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
|
|
| 68 |
mUBO = new InternalBuffer(); |
|
| 71 | 69 |
} |
| 72 | 70 |
} |
| 73 | 71 |
|
| src/main/java/org/distorted/library/uniformblock/UniformBlockIntUniforms.java | ||
|---|---|---|
| 20 | 20 |
|
| 21 | 21 |
package org.distorted.library.uniformblock; |
| 22 | 22 |
|
| 23 |
import android.opengl.GLES30; |
|
| 24 |
|
|
| 25 | 23 |
import org.distorted.library.effect.Effect; |
| 26 | 24 |
import org.distorted.library.main.DistortedLibrary; |
| 27 | 25 |
import org.distorted.library.main.InternalBuffer; |
| ... | ... | |
| 50 | 48 |
|
| 51 | 49 |
if( mReallyUseUBO ) |
| 52 | 50 |
{
|
| 53 |
mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
|
|
| 51 |
mUBO = new InternalBuffer(); |
|
| 54 | 52 |
} |
| 55 | 53 |
} |
| 56 | 54 |
|
| ... | ... | |
| 67 | 65 |
|
| 68 | 66 |
if( mReallyUseUBO ) |
| 69 | 67 |
{
|
| 70 |
mUBO = new InternalBuffer(GLES30.GL_UNIFORM_BUFFER, GLES30.GL_STATIC_DRAW);
|
|
| 68 |
mUBO = new InternalBuffer(); |
|
| 71 | 69 |
} |
| 72 | 70 |
} |
| 73 | 71 |
|
Also available in: Unified diff
minor