Skip to main content

Command Palette

Search for a command to run...

WCCC_Mechanism

Various Scrolls & Swipes to Go Through

Published
2 min read
WCCC_Mechanism

Swipe&Scrolls

For this week's Creative Code challenge by @sableRaph: Mechanism, Swipe&Scrolls contains the different mechanisms known as Scrolling & Swiping.  Alot of digital interactions embed these two mechanisms but what if, it was never-ending & Glitchy?

Coded in SonicPi & HydraVideoSynth with additional digital art techniques.

Poetry

Swiping from one page to the next,
Scrolling with the thumb
But some use their Index?
To pause, before exiting
Making sure nothing is missing
As when you scroll past,
There are sometimes no breadcrumbs
To see what you saw last

Video

https://youtu.be/Zbj3wt_ZTDU

Code

HydraVideoSynth Various Scrolls & Swipes

osc(1,1,1).colorama([0.1,0.3,0.5,0.7]).scale(() => (mouse.x)/mouse.y).repeat(()=> mouse.y/mouse.x).out()

speed = 0.75
osc(1,1,1).colorama(0.3).scale(() => (mouse.x)/mouse.y).repeat(()=> mouse.y/mouse.x).out()

speed = 0.25
osc(1,[1,0.3,0.2,0.05],[1,0.5,0.25]).colorama(()=> (time % 10)/11 + 0.01).pixelate([500,50,5000],[50,100,250,500,1000]).scale(() => (mouse.x)/mouse.y).repeat(()=> mouse.y/mouse.x).out()

speed = 0.25
osc(1,[1,0.3,0.2,0.05],[1,0.5,0.25]).colorama(()=> (time % 10)/11 + 0.01).pixelate([500,50,5000],[50,100,250,500,1000]).scrollY([0.15,0.05,-0.25].smooth()).scrollX([0.05,-0.25,0.1,0.05,-0.15]).scale(() => (mouse.x)/mouse.y).repeat(()=> mouse.y/mouse.x).out()

speed = 0.25
s0.initScreen()

src(s0).scale(1.20).scrollX([0.5,0.3,0.1,-0.1,0.2,-0.2].smooth()).scrollY([0.5,0.3,0.1,-0.1,0.2,-0.2].smooth()).out()

speed = 0.25

—---

s0.initScreen()

src(s0).scale(1.20).scrollX([0.5,0.3,0.1,-0.1,0.2,-0.2,0.3,0.4,0.5,0.6,-0.5,-0.4,-0.3,-0.2].smooth()).scrollY([0.5,0.3,0.1,-0.1,0.2,-0.2,0.01,0.3,0.4,0.7].smooth()).out()

speed = 0.25

SonicPi

live_loop :swsh do
  use_random_seed Time.now.to_i / 5
  with_fx :ping_pong, mix: (dice(8) + 1)/9 do
    with_fx :echo, decay: dice(6) do
      use_bpm [160,320].choose
      sample [:perc_swoosh,:perc_swash].choose, rate: [-1,1,0.5,1.2].tick, beat_stretch: dice(4) + 0.1
      sleep [8,16,32].choose
    end
  end
end

live_loop :beat do
  use_random_seed Time.now.to_i / 4
  with_fx :whammy,mix: [0.1,0.2,0.3,0.4,0.5,0.4,0.3,0.2,0.1].tick do
    sample :loop_amen, rate: 0.5, attack: dice(4), decay: dice(2),beat_stretch: 4
    sleep [1,2,4,8].choose
  end
end


live_loop :beat1 do
  use_bpm 60
  use_random_seed Time.now.to_i / 4
  with_fx :whammy,mix: [0.1,0.2,0.3,0.4,0.5,0.4,0.3,0.2,0.1].tick do
    sample :ambi_piano, attack: dice(4), decay: dice(2),beat_stretch: 4, amp: 1
    
    sleep [0.5,1,2].choose
  end
end

More from this blog