Please forgive me the colors and see it just as a tech demo.
The new parameter handling makes it easy to describe relative movement paths.
In the video one layer moves arround another (moving) one.
Still improving the interface.
Here an example, how this animation code looks at the moment. Makes that any sense to you?
Is it understandable what happens?
void RelativeMotion() {
// set up some colors
currentPalette = CRGBPalette16(
CHSV( 80, 255, 255 ),
CHSV( 160, 255, 255 ),
CHSV( 160, 255, 255 ),
CHSV( 80, 255, 255 ));
// move the palette dynamically
colorshift = beatsin8(10, 0, 100);
// a bit softening for the raw noise data
noisesmoothing = 100;
// coordinates and scale of layer 0
x[0] = 5 * beatsin16(2, 15000, 40000);
y[0] = 5 * beatsin16(3, 15000, 40000);
z[0] += 100;
// stretch dynamically
scale_x[0] = 6000 + beatsin16(30, 0, 4000);
scale_y[0] = 8000 + beatsin16(27, 0, 4000);
FillNoise(0);
// move layer 1 relative arround layer 0
x[1] = x[0] + (5 * beatsin16(30, 0, 10000)) - 25000;
y[1] = y[0] + (5 * beatsin16(40, 0, 10000)) - 25000;
z[1] += 100;
// same proportion and speed like layer 0
scale_x[1] = 6000 + beatsin16(30, 0, 3000);
scale_y[1] = 8000 + beatsin16(27, 0, 3000);
FillNoise(1);
// overlay both layers for color,
// layer 2 is also brightness,
// no colorscaling
MergeMethod3(1);
}
http://www.youtube.com/watch?v=7DQtzzKqkX0