Fully move the Meshes to their own package.
Convert everythig to GLES31 (there were some GLES30 remnants)
Move all the knowledge about Vertex and Fragment effects to their respective classes.
Change of API: move setting the EGL context back to the APP.
Small API simplification.
Further progress with Apps.
Convert the first few Apps to the new Effect API.
Progress with support for Effect classes.
Simplify setting up DistortedScreen.
Progress with VBOs - this time abstract out a new class, DistortedObject - i.e. everything that uploads something to GPU and thus needs to be auto re-created upon loss of the context.
Revert "Convert a few more APPs to the new resolution-independent Matrix Effects."
This reverts commit 51554e4700774b72e18e97c7cc72ef887dfbf551.
Convert a few more APPs to the new resolution-independent Matrix Effects.
Convert (almost) all remaining Apps to the new API which avoids memory leaks with Surfaces.
Remaining problematic Apps: 15. FBO 16. Star Wars (both leak Tree FBOs) 22. SurfaceView (does not work at all after going to background)
Major:
1) in the Library, fix the fact that some applications (those that were creating their DistortedSurface objects outside of onSurfaceCreated or onSurfaceChanged) would not render after the activity went to background (press POWER to see that).2) in the Apps, call the new 'Distorted.onPause()' API to fix the above problem...
Improve Around the World.
It now automatically chooses OpenGL ES 2.0 and GLSL 100 or OpenGL ES 3.0 and GLSL 300.
Postprocessing effects will not work on OpenGL ES 2.0 contexts.
New 'glClearColor' and 'glClearDepthf' APIs in OutputSurface. This fixes the 'transparency' regressions from last commit.
Speed up shaders (both compilation and execution) by explicitly enabling only the needed effects.
Change the the render() API!
THis introduces some regressions with the Effects3D app.
Major: change of API.
Split DFramebuffer into Framebuffer and Screen; introduce the 'DistortedInputSurface' and 'DistortedOutputSurface' interfaces.
Try using OpenGL ES 3.0 everywhere (but if device does not support it, try creating 2.0 context - this is important because of the emulator!)
Rename Grid to Mesh
New DistortedProgram class.
Fix a lot of Lint warnings in the apps.
Again change of API. Now instead of the 'DistortedEffects.draw() and DistortedTree.draw()' we have 'DistortedFramebuffer.renderTo()'
Change of names.
Change in the API: we always have to create a DistortedFramebuffer to render to.
Hide the 'depth' of a DistortedTexture inside the library, so users do not get exposed to this weirdness.
Complete the split DistortedObject -> (DistortedTexture,DistortedEffectQueue)
Beginnings of split of DistortedObject into two separate classes: DistortedEffectQueues and DistortedTexture.
Still does not compile, but pushing already.
Rename various classes; fix a bug in Around the World.
Major change in API: separate the GRID from DistortedObject; completely remove classes derived from DistortedObject.
1. (hopefully) finish the 'Save' app (now we can adjust the size of the resulting file)2. Fix one long-standing bug in almost every single app.
Simplify SurfaceViews
Around The World pretty much finished!
Around The World: implement blackness
Improve Around The World
Progress with Around The World
progress with Around the World
Encode more info in the EfectNames enum.
Compute Race correctly
Around the World: setRace
Around the World: moving the selection rectangle
Minor stuff
Progress with AroundTheWorld
Progress with "Around The World"
New app: Around The World (beginnings)