# WCCC_Evolution

# EvolutionaryCubes

For this week's Creative Code challenge by @sableRaph: ***<mark>“Evolution“</mark>***, **EvolutionaryCubes** is coded in **SonicPi, Locomotion & HydraVideoSynth** and shows an evolutionary build of some cubes attached to some mushys in various potential combinations.

## Poem

```ocaml
Evolving Beyond the limitations
That aren't seen in fiction
inspired by the Pixelation 
Imposed barriers aren’t met
As they aren't the rules that are set
But rather, a clutter of ideals
That aren’t making this evolution
These feels
If there isn’t understanding, do not fret
```

## Video

%[https://youtu.be/cF9ICO7UCL8] 

## Code

### Locomotion

```haskell
a n = dancer {url="https://raw.githubusercontent.com//IllestPreacha/CreativeDataStuff//7aa243f3043429f88cb44eda132d85e96863541b/3Dmodel/cubemix1.glb",size = 0.45 * sin(n) * 2, x = -8 + n + range 1 - 5 (osc 0.25), ry = 270 / sin(n), rx = n* 10,lx = sin(n*10) *range 10 20 (osc 0.41),lz = sin(n) * 30 + range 10 180 (osc 0.15), z = sin(n * -1) + range -4 -20 (osc 0.20) }; for [1..22] a;

c n = dancer {url="https://raw.githubusercontent.com//IllestPreacha/CreativeDataStuff//7aa243f3043429f88cb44eda132d85e96863541b/3Dmodel/cubemix2.glb",size = 0.46 * sin(n) * 2, x = -8 + n + range 1 - 5 (osc 0.25), ry = 270 / sin(n), rx = n* 10,lx = sin(n*10) *range 10 20 (osc 0.41),lz = sin(n) * 30 + range 10 180 (osc 0.15), z = sin(n * -1) + range -4 -20 (osc 0.20) }; for [1..22] c;


b n = dancer {url="mushy",size = 1.45 * sin(n) * 2, x = -8 + n + range 1 - 5 (osc 0.25), ry = 270 / sin(n), rx = n* 10,lx = sin(n*10) *range 10 20 (osc 0.11),lz = sin(n) * 30 + range 10 180 (osc 0.15), z = sin(n * -1) + range -4 -20 (osc 0.20) }; for [1..22] b;
```

```haskell
a n = dancer {url="https://raw.githubusercontent.com//IllestPreacha/CreativeDataStuff//7aa243f3043429f88cb44eda132d85e96863541b/3Dmodel/cubemix1.glb",size = 0.45 * sin(n) * 2, x = -8 + n + range 1 - 5 (osc 0.25), ry = 270 / sin(n), rx = n* 10,lx = sin(n*10) *range 10 20 (osc 0.41),lz = sin(n) * 30 + range 10 180 (osc 0.15), z = sin(n * -1) + range -4 -20 (osc 0.20) }; for [1..42] a;

c n = dancer {url="https://raw.githubusercontent.com//IllestPreacha/CreativeDataStuff//7aa243f3043429f88cb44eda132d85e96863541b/3Dmodel/cubemix2.glb",size = 0.46 * sin(n) * 2, x = -8 + n + range 1 - 5 (osc 0.75), ry = 270 / sin(n), rx = n* 10,lx = sin(n*10) *range 10 20 (osc 0.41),lz = sin(n) * 30 + range 10 180 (osc 0.15), z = sin(n * -1) + range -4 -20 (osc 0.20) }; for [1..30] c;
```

### HydraVideoSynth

```javascript

s0.initScreen()

src(s0).pixelate(250,250).out()
```

```javascript
s0.initScreen()

src(s0).colorama(0.2).blend(src(s0).scale(0.95).colorama(0.25)).
blend(src(s0).scale(0.90).colorama(0.1)).blend(src(s0).scale(0.90).colorama(0.3)).
modulateRotate(src(s0).scale(0.85).colorama(0.3)).out()

```

### SonicPi

```ruby
#remix of  https://twitter.com/wpgFactoid/status/666692596605976576

live_loop :overlord do
  use_random_seed Time.now.to_i / 3
  with_fx :pitch_shift,pitch: dice(5),pitch_dis: dice(10) do
    with_fx :vowel,voice: dice(3), mix: 0.25 do
      with_fx :whammy, mix: [0.25,0.50,0.75].choose do
        use_bpm [5,1030,60,120,240,480,720].choose
        use_synth [:piano,:beep].tick
        [1, 3, 6, 4, 5, 2,7,4, 2, 1,3,5].each do |d|
          (range -4, 4).each do |i|
            play_chord (chord_degree d, [:c,:a,:e,:g,:Eb3].choose, [:major,:minor].choose, [3,2,1,4].choose, invert: i)
            sleep [0.25,0.5,1].choose
          end
        end
      end
    end
  end
end

live_loop :overlord2 do
  use_random_seed Time.now.to_i / 5
  with_fx :echo, decay: (dice(10)+1)/4,mix: [0.2,0.3,0.4].tick do
    with_fx :ixi_techno, mix: [0.49,0.75].tick, phase: [0.7,0.9].choose do
      with_fx :vowel,voice: dice(3), mix: 0.25 do
        with_fx :whammy, mix: [0.25,0.50,0.75].choose do
          use_synth [:piano,:pretty_bell,:dull_bell].choose
          use_bpm [5,10,30,60,120,240,480,720].choose
          [2, 3, 6, 4, 5, 2,7,4, 2, 1,3,5].reverse.each do |d|
            (range -4, 4).each do |i|
              play_chord (chord_degree d, [:c,:a,:e,:g,:Eb3].choose, [:major,:minor].choose, [3,2,1,4].choose, invert: i)
              sleep [0.25,0.5,1].choose
            end
          end
        end
      end
    end
  end
  
  
end
```
