WCCC_MustMove

OffCenteredBlinks

For this week's Creative Code challenge by @sableRaph: “Must Move”, OffCenteredBlinks Represents various movements both noticeable and subtle that can occur through SonicPi & LiveCodeLab.

Poetry

Celestial Eyes
Must move , they say
Blinking as they reach the lines
The lines of horizon
Looking to see the depths of Poseidon
But till then, they shall Move Each Day

Video

Code

LiveCodeLab


(time % 29 + 1) times with i
    scale 0.83,0.83,1
    fill aqua
    ambientLight tan(i),sin(i)*25,72
    ball (time % 15 + 1)/24,i,sin(i/3)*4


12 times
    stroke red
        peg 12
    stroke green
        ball 140

simpleGradient yellow,red,orange


(time % 29 + 1) times with i
    scale 0.83,0.83,1
    fill green
    ambientLight tan(i),sin(i)*25,72
    ball (time % 15 + 1)/24,i,sin(i/3)*4


12 times
    stroke red
        peg 12
    stroke green
        ball 140

SonicPi


def Sine_ing(looping,samp1,samp2,samp3)
  use_random_seed Time.now.to_i / 3
  rangeFul = (0..30).to_a.shuffle() #shuffling a range of numbers from 0 to 30 into an array
  #setting counters
  i = 0
  j = rangeFul.length()

  #setting the live loop
  live_loop looping do
    use_bpm [140,70,35].choose
    use_random_seed Time.now.to_i / 2
    with_fx :echo, mix: Math.sin(j).abs do
      with_fx :distortion,mix: Math.sin(i).abs do
        #If the sin makes the number a negative
        if Math.sin(rangeFul[i]) > 0
          sample [samp1,samp3].choose,rate: Math.sin(rangeFul[i])
        end
      end
    end


    with_fx :ping_pong, mix: Math.sin(i).abs do
      use_bpm [280,140,75].choose
      use_random_seed Time.now.to_i / 8
      #If the sin makes the number a positive
      if Math.sin(rangeFul[i]) >  0
        sample [samp2,samp3].choose
      end
    end

    with_fx :ixi_techno, mix: Math.sin(j).abs do
      use_bpm [120,60,30,15].choose
      with_fx :vowel, mix: Math.cos(j).abs do
        with_fx :gverb, mix: rrand(0.4,0.8) do
          use_random_seed Time.now.to_i / 9
          #If the sin makes the number 0
          if Math.sin(rangeFul[i]) == 0
            sample [samp1,samp2].choose
          end
        end
      end
    end


    i += 1

    if i >= rangeFul.length()
      i = 0
    end

    j -= 1

    if j <= 0
      j = 0
    end

    sleep [Math.sin(i).abs + 0.25,Math.sin(j).abs + 0.25].choose #to avoid the issue with zero

  end
end


Sine_ing(:SineFul,:tabla_ghe5,:drum_bass_soft,[:elec_blip,:ambi_glass_hum].choose)
Sine_ing(:SineFul2,:ambi_dark_woosh,:perc_snap2,:glitch_perc5)
Sine_ing(:SineFul3,[:ambi_piano,:sn_generic].choose,:ambi_haunted_hum,:vinyl_backspin)
Sine_ing(:SineFul4,[:elec_blip,:bd_fat].tick, :glitch_perc5,:vinyl_backspin)
0
Subscribe to my newsletter

Read articles from Kofi / Illestpreacha directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Kofi / Illestpreacha
Kofi / Illestpreacha