RubikCube: add skeleton WinEffects (for now only one effect - 'Spin' copied from Solve)
RubikCube: detect if the cube is solved.
In order to do this correctly, we also needed to keep correcting each mQuatScramble quaternions after each quatMultiplication in order to avoid multiplication errors accumulating. This turns out to be easy, because each quaternion representing a legal combination of rotations of a RubikCube must have each of the 4 to its components be equal to one of only 7 possible floats.
RubikCube: progress with scrambling
RubikCube: make finishingRotation more flexible (can now finish any rotation which did finish interpolating (nearly) to the end - and not only the single-static 'manual' rotation)
library: Fix DynamicQuatcube app: progress with ScrambleEffects
- adjust SizeChangeEffects- implement first two UnscrambleEffects
Enhance the TRANSPARENCY effect with a Wave.
1. Change the API of Dynamic: split makeNowRunFor into two separate 'setDuration' and 'resetToBeginning'2. Major changes to the 'Dynamic' app so that we can check more about the Dynamics.
Invert the order of Matrix Effects. Now, just as in the other queues, the first matrix effect is actually the first to act on the object - not the other way around!
Simplify the way applications can get notifications when an effect finishes.
Now, instead of the 'DistortedEffects.(de)registerForNotifications()' 2 APIs, we call a single 'Effect.notifyWhenFinished()'.
Progress with DistortedCube.
DistortedCube: progress with abstract Transition Effects.
Correct the Legal notice.
Rename all the classes that are not exported to application to 'Internal'
Port fixes for the memory leak problems from distorted-examples.
App: minor.
New module: Rubik App. Initial commit.