Comment!
Add API to render from a FBO to another FBO
Cleanup.
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.
Minor
onPause(): fix StarWars
Bugfix: only add EffectListener ONCE!
Some improvements for StarWars's behaviour after onPause(), but it doesn't really work yet.
Remaining 'onPause-buggy' apps: StarWars, Save.
Attempt to bring DTexture and DFramebuffer closer together.
Minor.
Speed up ObjectTree: we no longer have to traverse the whole tree before rendering to mark everything as not-rendered-yet.
Change of API in DistortedFramebuffer.
Major restructuring with DistortedTexture. One now is able to create Textures anywhere, even from a thread which does not hold the OpenGL context. Same for DistortedFramebuffers.
Hide the 'depth' of a DistortedTexture inside the library, so users do not get exposed to this weirdness.
Minor improvements in DistortedTexture.
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.
Some fixes for the recent API change
Major change in API: separate the GRID from DistortedObject; completely remove classes derived from DistortedObject.
Fix parallel projection.
The EffectQueues are now totally independent of the size of the underlying Bitmap.
Some speedup in CubesGrid
Fix a long-standing buf in CubesGrid (incorrect Grid in case of 5x5 11111 11011 10101 11011 11111)
Various relatively minor cleanups.
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.
Move the 'Save' app to using a DistortedFramebuffer.
Improvements for DFramebuffer.
Fix the 'Save' app so that the saving thread does not run all the time in a tight loop
Javadoc
Fix with Projection
Turn the former 'FOV' app into 'Projection' app that also checks the (x,y) the camera looks at.
Move the *List classes into static members of DistortedFramebuffer and DistortedObject.
Cleanup
DistortedFramebuffer should we working now, including deletions.
Simplify SurfaceViews
Move DistortedNode and Distorted to use the new DistortedRenderTarget.
Minor progress with RenderTarget
New DistortedRenderTarget - preparation for being able to render to any FBO (screen, offscreen pixmaps)
Minor stuff
Fix the 'Save' app on Android API >=23 (we need to explicitly ask for write permission)
DEFORM: add support for Regions
Allow more than the default number of concurrent VERTEX and FRAGMENT effects in Effects3D.
New vertex effect 'PINCH'
Complete moving center to 3D.
Unify Effects3D and Matrix3D (still incomplete!)
Encode more info in the EfectNames enum.
Progress with WindManager.
Dynamics: Introduce 2 Modes of operation:
- 'random access' mode, where we are able to call a single Dynamic from multiple thread simultaneously.- 'sequential' mode, which only permits sequential interpolation from one client.
The second mode has an advantage when one needs to change mDuration: it keeps on interpolating smoothly. In the first mode, this is not possible.
2 bugfixes:
- in Dynamics, it has to be t<=0.5 (rather than t<0.5) (see comment in code)- in EffectQueueVertex, we need to postprocess() the last time, when effect is finished but not removed!
Minor details
Progress with Wind
Tidy up 'Cubes' app
Bugfix
Bugfix (sometimes, when t=0.5 exactly, it wouldn't recompute Noise in case of PATH mode)
re-generate noise after passing each Point.
Flag app finished
Next fixes for issues with 'jumping' path when noise is on. (and a whole lot of commented out debugging)
1. Attempt to deal with unstable Orthonormal Base in Dynamic class (so far unsuccessful)2. Improvements to the 'Dynamic' (and by necessity, 'MovingEffects') applications (to be able to debug the previous)
minor stuff
Fix 4D and 5D noise, make noise N dimensional.
Bugfix for the fishy loops in 2D noise.
Some corrections for the new Noise, it is still fishy though (some suspicious loops form - see it with the ''Dynamics" example app, 2D, 3 points)
Completely redesign Noise in the Dynamics and move all the complexity to the parent class.
something does not work with it now :)
Move most of the NOISE complications from DynamicND classes to the parent Dynamic class.
New constructor to DistortedCubes - easily create a hole-less Cuboid.
Beginnings of a new example app - a waving flag.
No actual waving yet!
Javadoc.
Correct Javadoc issues
Comments
Make the WAVE effect 5D (extra parameter 'offset')
Add Static5D and Dynamic5D.
Improvements to comments.
Reflect the fact that we are no longer caching sine and cosine in the EffectNames comments.
swap the 2nd and the 3rd parameters in the WAVE effect and improve comments for the WAVE user API.
Switch off the pre-compulting of sin and cos in CPU as it turns out that those two are single-instruction functions on any modern GPU ( http://www.gamedev.net/topic/322422-number-of-gpu-cycles-for-cos-and-sin-functions/ - link form 2005 ! )
Shades in the WAVE effect fully working, if the effect is the only one.
Remaining: combine the shades with other effects!
small improvements in DISTORT
Preparation to make the WAVE effect fully 3D
Adjustments for EffectQueueVertex.postprocess()
Beginnings of the WAVE effect.
Fixes for fragment effects in Effects3D.
Fix for Bug #17: Regions of Fragment Effects migrate.
Fix is: don't send vertex position and the Fragment Effect region to the fragment shader already multiplied by the ModelView matrix (that introduces the imprecise interpolation because of the projection effect) but simply send both of them in local coords.
Remove the MACROBLOCK Effect altogether.
Finally fix the 'when rendering though an FBO, the other side of triangles is visible'
Fix the 1x1 case! Before it used to be impossible to create a DistortedBitmap just with 2 triangles!