# WCCC_Marching

# **UnEvenMarching**

For this week's Creative Code challenge by @sableRaph: *“Marching*”, **UnEvenMarching** represents the following definition, where “**Marching** refers to the organized, uniformed, steady walking forward in either rhythmic or route-step time;” (WIkipedia).

In this **Locomotion** Coded Choreography, each line is doing their own marching sequence with the glitching from **HydraVideoSynth** attempting to throw them off. The **SonicPi** coded audio represents the percussion instruments that can be seen in Marching Bands but in a glitched out setting.

## Poem

```ocaml
The March
Is What they wanted to Watch
But this was not the Typical
Even with the notion of Lines
The unison may be considered a blotch
Potentially Biophysical
A Metaphysical Watch
Even  Astrophysical March
Elements that are UnTypical,
Unaligned
```

## Video

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

## Code

### Locomotion

```haskell
-- lighting and background
clear {color = 0x6988B5};

directional { colour=0xf00f80, intensity = range 0 2 (osc 0.15), z = range 0 17 (osc 0.8), y = 10, x = -6, z = range -5 5 (osc 1.2), dur = 3 };
point {color = 0x5555A7, x = 0, y = 3};



--marching rows
a n = dancer{url = "orDroid", animation = [16,1,12,1], ry = range 90 180 (osc 0.19),size = 0.25, y = range 4 2 (osc 0.08), x = range -5 5(osc 0.16) + 25/n * 1.5,dur =1.5};
for [0..25] a;


b n = dancer{url = "orDroid", animation = [11,1,16,1],sy = range 0 1.5 (osc 0.015), ry = range 90 180 (osc 0.19),size = 0.55, y = range 2 0 (osc 0.08), x = range -5 5(osc 0.016) + 20/n * 1.5,dur = 3};
for [0..25] b;


c n = dancer{url = "dataghost", animation = [26,1,24,1], ry = range 90 270 (osc 0.19),size = 0.70, y = range -2 0 (osc 0.16), x = range -5 5(osc 0.16)+ 25/n * 1.5,dur = 6};
for [0..25] c;

d n = dancer{url = "dataghost", animation = [2,1,6,1], ry = 90,size = 0.75, y = range - 2 -4 (osc 0.08), x = range -5 5(osc 0.016)+ 25/n * 1.5, dur = 12};
for [0..25] d;
```

### SonicPi

```ruby
live_loop :bassflow do
  with_fx [:reverb,:echo].tick, mix: [0.6,0.4,0.2,0.1].tick do
    use_random_seed Time.now.to_i / 2
    use_bpm [120,30].choose
    if one_in(2)
      sample [:tabla_dhec,:tabla_tas3,:tabla_re].tick , rate: [0.5,1,-0.87,0.25].tick, amp: dice(3)+ 1
      sleep [0.5,1,2].choose
    else
      use_bpm [120].choose
      sample :drum_bass_soft, amp: 2.5
      sleep [0.25,0.5,1,4].tick
    end
  end
end


live_loop :heavydrum do
  with_fx :ixi_techno, mix: [0.75,0.5,0.625].choose do
    use_random_seed Time.now.to_i / 4
    if one_in(2)
      use_bpm [120].choose
      sample :drum_cymbal_closed
      sleep 0.5
    else
      use_bpm [120].choose
      sample :drum_heavy_kick
      sleep 0.25
    end
  end
end


live_loop :heavydrum1 do
  with_fx :ixi_techno, mix: ((use_random_seed Time.now.to_i / 10) % 10 + 1)/11 , phase: dice(3) do
    use_random_seed Time.now.to_i / 3
    if one_in(2)
      use_bpm [120,60].choose
      sample :drum_cymbal_closed
      sleep [0.5,0.75,1,2,4].tick
    else
      use_bpm [120,60].choose
      sample :drum_heavy_kick
      sleep [0.25,0.5,2,4].choose
    end
  end
end

live_loop :drumming do
  use_bpm [120,60].choose
  use_random_seed Time.now.to_i / 2
  sample :drum_cymbal_pedal
  sample :drum_splash_hard
  sleep [4,8,2].choose
end



live_loop :moredrums do
  use_bpm [120,60,30].choose
  with_fx [:flanger,:ping_pong].tick, mix: ((use_random_seed Time.now.to_i * 2) % 10 + 1)/11  do
    with_fx :echo, mix: rrand(0.1,0.7), amp: dice(4) do
      sample [:drum_tom_mid_soft,:drum_roll].choose
      sleep [1,2,4,8].choose
    end
  end
end
```

### HydraVideoSynth

```javascript

s0.initScreen()



src(s0).pixelate([5,50,500,50,5000,50,50000].smooth(),[5,50,500,50,5000,50,50000].smooth()).out()

speed = 0.25

```
