Fixes for dynamic postprocessing.
Minor
Now all PostprocessEffects are truly self-contained, including dynamic enable() and all shader sources.
Simplification in PostprocessEffects
Correction for the last change.
Postprocessing: take quality only from the first child in a bucket.
Simplification in EffectQueueMatrix.
Prevent possibility to enable an effect multiple times.
Minor.
Now all Postprocessing EffectQueues have the right IDs regardless of number of effects.
Move all the knowledge about Vertex and Fragment effects to their respective classes.
All knowledge about Postporcessing moved to the respective Effect classes.
Move all knowledge about a MatrixEffect from the EffectQueueMatrix to the classes.
Simplify Effect classes.
Change of API: move setting the EGL context back to the APP.
Beginnings of support for the unified Data data type.
Fixes for removing effects.
Reorganize the way we add and remove all Effects (do it through DistortedMaster and is POSTPROCES - adjust Bucket and SORT Nodes).
Buggy: removing effects does not work.
Small API simplification.
Remove old facility to correct Postprocessing buckets on new Postporcessing effects.
New facility will follow shortly....
Remove DistortedEffectsPostprocess and unify it with DistortedEffects.
Job not finished - doesn't compile now!
Fix 'Different Bitmaps' APP. Now 27 out of 31 APPs work.
Fix 'Cat and Dog' APP. Now 24 out of 31 APPs work.
Bugfix (invert Region's y coord)
Bugfixes for the recent 'Effect classes' API change.
Bugfix in Effect regions.
Progress with Effect classes - everything compiles now!
Some progress with Effect classes.
11 apps compile now.
Further progress with Apps.
Convert the first few Apps to the new Effect API.
Progress with support for Effect classes.
The library compiles now!
Progress with support for Effect classes. Last error in the library before it compiles!
Progress with support for Effect classes. Almost compiles now!
Big mess - nothing compiles now; classes moved around.
Beginnings of support for Effect classes.
Progress with GLOW.
Serious bug sorting Surface's children into postprocessing Buckets detected.
Properly compute the Halo of a queue of postprocess effects.
Still small improvement to FPS
Correct the FPS work (now works even after a Pause() ! )
Move showing FPS in the uppoer-left corner of the Screen to the Library.App can enable/disable this at any time with a single API call.
Beginnings of support for the GLOW effect.
Bugfix in renderChildren again :)
Bugfix in renderChildren (postprocess):
for each bucket, first render all the bucket members , only then render all of their Stencils+Depths (avoids this 'black ring' effect)
Split up postprocessing into queue of effects + blit with depth.
Major speedup, BLUR fully optimized now.
Multiblur app, worst case (all 8 cubes blurred with max radius, HIGHEST quality: Nexus5X: 46.7 FPS, Nexus 4: 29.7 FPS.
Minor speedup.
Move on to Stencil on both stages of the BLUR + separate 'blit with depth'.
This works wonders on Nexus 5X ( r=50 quality=HIGHIEST 1,4,8 cubes: 59.3,43.6,41.0 FPS! ) but it somehow fails to clear the DEPTH and STENCIL buffers on Nexus 4....
Correct a bug where postprocessed objects would not re-appear after the app went briefly to the background.
Switch on Stencil in Postprocessing.
This is a clear win on Nexus 5X; on Nexus 4 it is debatable - faster on loads where area to be postprocessed is not much (~20% ?) of the screen; slower otherwise.
Move to a new way to detecting depth of postprocessing halos.This switches off stenciling (hopefully temporarily!)
10% speedup with postprocessing.
Beginnings of support for multi-COLOR attachment Framebuffers.This will be used in OutputSurface's Postprocessing Buffer.
Some improvements to DistortedRenderState.
minor
Fix Stencil in Postprocessing with lower than HIGHEST quality: now any quality works.
Progress with Stencil in Postprocessing: stencil during the 1st stage postprocess (buffer1->buffer2) works now, provided quality is HIGHEST.(lower quality --> render errors, looks like Stencil is not set up correctly then)
Progress with Stencil in Postprocessing (doesn't work still)
Progress with Stencils in postprocessing.
Progress with Magnify.
Beginnings of support of Magnification.
Full support for any-depth MeshCubes.
Progress with any depth MeshCubes.
Change of API in anticipation for MeshCubes of any depth (currently only 0 and 1 work)
Fix creating FBOs with combined DEPTH/STENCIL.
This makes the Stencil app fully work, including rendering thru a FBO.
Progress with Stencil app. Rendering through an intermediate FBO still doesn't quite work.
Add possibility to create FBOs with combined DEPTH/STENCIL.
Simplify setting up DistortedScreen.
1. Correct some bugs in DistortedRenderState2. Thus make the Stencil App work3. New icon for it
Progress with Stencil App; should be working now AFAIK but doesn't.
Beginnings of Stencil App.
Some corrections so that most apps still work on the Android emulator (OpenGL ES 2.0-based)
Merge Transform Feedback
Use Transform Feedback to (optionally) display the Normal vectors.
Dynamic display of bounding rectangles (with coords computed by Vertex Shader and gotten with Transform Feedback) works now.
Major problem: the glMapBufferRange() slows doewn rendering in a major way. Multiblur's FPS:
Nexus5X : 35.4 before -> 12.6 after...
Beginning of support for actual Transform Feedback.
Minor bugfix.
Move from unpacked to packad server-side Vertex attribute buffer.
Merge remote-tracking branch 'origin/master' into transform-feedback
Revert "Progress with Transform Feedback."
This reverts commit e78a30fd53d9463903521921e177028e5c869514.