minor
make it possible to compile distorted-examples with both master and kotlin-transition branches.
fixes
fixes for MeshBase
fixes for distorted-examples
transition of the mesh package.Compiles, but does not work.
Kotlin nonNulls: fixes
transition the 'mesh' package.
progress with the 'mesh' package.
begin to migrate the 'mesh' package.
Rename .java to .kt
replace all andoird logging with System.out.println
Bugfix with UniformBlockAssociation
Make it possible to apply Postprocessing effects to only an arbitrary subset of components.
bugfix in the Library:Before, the mapping of the attributes in various shaders to the MeshBase.bindVertexAttribs() was shaky.In fact incorrect in case of the Preprocess program. Improve that!
Lint
Important bugfix for the shape of concave cubit walls!
Bump Jing works now.
fix the 'holes in textures' problem.
fix the 'band' problem in the TwistyBandagedMegaminx.
also change the fullVertices to the same format
change the way the coordinates of stickers are kept from float[2*N] to float[N][2]
Major progress with supporting cubit faces with holes.
Initial support for scrambling a bandaged pyraminx.
Improve MeshMultigon (for the BandagedPyraminx case!)
another bugfix for MeshMultigon.
bugfix for a crasher
Bugfix in MeshMultigon.
remove commented out code
We no longer need to support 'edgesUp' in MeshPolygons.
Fixes for MeshMultigon. Perfect!
Implement MeshMultigon out of BandedTriangles (doesn't work yet)
MeshBandedTriangle implemented
MeshBandedTriangle
Comment.
correct face shapes (post-new MeshPolygon normal computation)
improve MeshPolygon. Now Multigon's meshes are close to perfect.
Multigon testing app
MeshMultigon finished.
Progress with MeshMultigon. Still auto-computation of 'up' edges does not work.
Beginnings of MeshMultigon (does not work yet)
MeshPolygon: support for an arbitrary subset of edges being 'up' (i.e. buildup to MeshMultigon)
MeshPolygon: fix the normals.
one more fix for displaying normals.
build for API 34.
Make the touchable part of the 'coin' in the CoinTetrahedroon a bit smaller.
Decouple (to a large degree) the OpenGL Library from Android.
fix detection of not used attributes.
Finally fix the reason foor 'incorrect vertex attribute' message spamming the Log of the Emulator.
license
fix for a crasher.
A few code improvements.
Fix for an invalid enum.
New debug to print a whole component of a mesh.
Preparation for drawing only the FRONT side of the cubit walls.
Correct the glBufferData's usage argument: in UBO and VBO cases, it should be GL_STATIC_DRAW.
Add to MeshPolygon a special modee to create a 2-band polygon with dense corners (needed to reduce number of vertices in side faces of the TwisttyPuzzle cubits)
Add testing of MeshPolygon to the MeshFile app.
New API: set components centers of all components all in one go.
Mesh creation: finished.
Move destroying most of statics from onDestroy() earlier, to onPause().
Reason: doing this in onDestroy() is too late, because when we have two activities, and switch between them, first the ending's Activity onPause() is called, then the starting Activity's onResume, then it's onSurfaceCreated(), then we insert all the effects, and only then the ending Activity onDestroy() gets fired off - and this might destroy the already enabled effects, like for example the Programs of the Postprocessing effects.
Convert the Ivy corner cubit to the new, 'universal' cubit creation method.
This forces deep changes to 'createRoundSolid' and the underlying 'MeshPolygon' class to make them support arbitrary Polygon 'centers of face convexity'.
Reason: the faces of this cubit are concave and such default 'center of face convexity' (which by default used to be (0,0)) turned to lie outside the face - which produces strange visual artifacts.
MeshBase's 'MAX_NUM_COMPONENTS' is not a constant - rename!
Convert the first object, the Cube, to the new Cubit-creating engine.
Face cubit creation: progress: rounded corners
Face cubit creation: progress, a cube renders correctly :)
Another attempt at fixing tthings on early Qualcomm OpenGL ES 3.0 drivers.
The previous version does not work on Adreno 405 driver V@100, present for example in a Asus ZenPad 8.Revert the packed 'ivec2' UBO in the vertex shader back to a 'std140' ivec4. This comes at a price if bumping into the bug on Qualcomm driver version 331 on Adreno 308 - i.e. Samsung Galaxy J4+ again....
Correct a comment for Javadoc.
Add new comments for Javadoc.
Make the 'Component Associations' UBO (on most devices) twice smaller -use the 'packed' layout and 'ivec2' in place of 'ivec4'.
This forces us to dynamically probe the 'Stride' - number of 4-byte entities that the UBO's 'ivec4' takes - and correct the already-constructed UniformBlockAssociation objects in case this turns out to be different than the expected 2, i.e. tightly-packed....
Make per-component centers optional, controlled by API MeshBase.setUseCenters()
Bugfixes as a result of the Samsung Galaxy J4+ investigation:
1) By default, switch off transform feedback in the main program. Create a new API 'needTransformFeedback()' to call if someone still needs TF in the main program.2) lower the default max number of vertex effects to 30....
Progress with Megaminx.
Introduce another Uniform Block Object. Now we can have much more vertex and fragment effects - up their default number to 100.
Plug a major memory leak.Still one more leak remains - a similar UniformBuffer has to be markedForDeletion in the EffectQueues.
Convert the Integer part (i.e. effect names and the two associations) of vertex and fragment shaders to Uniform Buffer Objects.Next: convert the last part, i.e. the float effect parameters.
Fixes for the Rex Cube (mostly works now)
Fix the fact that we would keep adding new InternalBuffers to the 'Done' list - split 'invalidate()' and 'recreate()' to two separate actions!
Improve the Skewb; set max components to 110 in MeshBase so that all of Professor Skewb's components fit.
Do not crash if we try to map a texture component out of range.
New API for the library: add an empty texture component to a Mesh.Use this in thr Magic Cube to add empty texture components to some types of cubits.
Minor.
Add an extra option to MeshPolygon: making triangles located around the vertices of the polygon smaller.
Progress with MeshPolygon.
Rename Meshes.
First attempt at new mesh - Polygon. Unfinished (normal vector!), untested
Remove the 'binding' parameter from the UBO in the vertex shader - this is not part of OpenGL ES 3.0, only introduced in 3.1, and we want to be compatible with 3.0.Now we need to dynamically detect the UBO index and form a BlockBinding ourselves.
Add component centers to dmesh version 2.
Remove the 'inflate' vertex attributs from the Mesh and file format, and replace that with a per-component 'inflate centers' (which are as of yet untested)
Simplify AssociationUniformBlock
Merge branch 'effects-ubo'
Bugfixes.
Introducing UBO to Effect Queues: step 1.