Genuary2023_Maximalism

Genuary2023_Maximalism

OverSketching

The prompt for Genuary2023 Day 29 is

"Maximalism"

For Today's prompt, the piece is named OverSketching

  • The visuals are made up of three individual LiveCodeLab sketches that are overlayed in numerous ways via Hydra (Thru it's initScreen() function)

    • Added a filter to add more flare to the colours within
  • For the audio portion, I took two previous SonicPi-coded tracks and merge them into one while slowing down the track

Poem

Layering on Top
Layering non-stop
OverSketching is a mindset
That these sketches will ask to not be reset
Being in love with that preset
That intent
That the layers of sketches present

LiveCodeLab Code

First Instance

turns = ((sin(time % 4) + 1) * 15)/4
detail = 400
speed = 0.4
simpleGradient pink,white,black
scale (time % 20 + 1)/10 + wave(0.003)
rotate 15,3,1

detail times with i
    rotate 0, 0, (2 * pi) / detail
    move 0.65
        rotate (turns * i * pi) / detail + (time * speed), 0, 0
            rect 1, (sin(time) + 1)/10

detail times with i
    rotate 0, sin(time % 30) / 24, (2 * pi) / detail
    move 0.65,2,4
        rotate (turns * i * pi) / detail + (time * speed), 0, 0
            rect 1, (cos(time) + 1)/15

detail times with i
    if time % 20 > 10
        animationStyle motionBlur
    else
        animationStyle paintOver
    rotate 0, 0, (2 * pi) / detail
    move 4,0.65,2
        rotate (turns * i * pi) / detail + (time * speed), 0, 0
            rect 1, (cos(time) + 1)/20

Second Instance

turns = (sin(time % 40)+1) / (cos(time % 10) + 1)
detail = 100
speed = 0.25
animationStyle motionBlur
simpleGradient blue,red,yellow
scale abs(2 - wave(0.03)) * 2
rotate time / 5, time/5,time/3
(time % 13)/4 times
    rotate 0, 2, tan(wave(0.03))
    detail times with i
        rotate 0, 0, 2 * pi / detail
        move 2, 5, 1
            rotate (turns * i * pi) / detail + (time * speed), 0, 0
            rect 0.2 + wave() + 0.1,0.3,0.6

Third Instance

noStroke
ambientLight  200,150,220
simpleGradient aqua,teal,blue
rotate time, time/2, time/3

scale wave(0.03) + 0.4


900 - ((time % 24)*30) times with i
    rotate time * 2 + sin(i)
        move 2, sin(time), sin(wave(0.5))
        fill yellow
            ball abs(1 - wave(0.03)), 0.4 * wave(0.04), 0.07 * (time % 3 + 0.5)
            fill red
            box 0.07 * (time % 3 + 0.5), abs(1 - wave(0.03)), 0.4 * wave(0.04)
            fill green
            peg 0.4 * wave(0.04),  0.07 * (time % 3 + 0.5), abs(1 - wave(0.03))

Hydra Code

s0.initScreen();
s1.initScreen();
s2.initScreen();

shape(30, 0.01, 1)
    .mult(src(s0)
        .blend(osc(20, -0.1, 1)
            .modulate(noise(3, 1))
            .rotate(0.7)))
    .scroll(() => mouse.x * 0.003, () => mouse.y * 0.0004)
    .modulateRotate(src(s0)
        .kaleid(4), () => mouse.x * 0.004)
    .modulateScale(s0, () => mouse.x * 0.004)
    .out(o0);

src(s1).pixelate(10000,1000).diff(o0).modulateScale(s2, () => mouse.x * 0.004).out(o2)

src(s2).modulateRotate(src(s2)).scale(0.33).scroll(()=> Math.sin(time % 25)/10).out(o3)

render()


speed = 0.25;

SonicPi Code

#Color +Shadows
#RGB Values
#shadow length equation is Length = height / tan(angle)

#Due to High Pitches, will divide the numbers by 3

def color(hue,loop,synth,effect)
  with_fx effect do
    live_loop loop do
      i = 0 #counter to iterate between the 3 values
      use_synth synth
      play hue[i]/3 ,release: 2
      sleep [0.5,1,2].choose
      if i < 4
        i+= 1
      end
    end
  end
end

#shadow length component
#adding a decay to the shadow portion

def shadowColor(hue,loop,synth,effect)
  with_fx effect do
    live_loop loop do
      i = 0 #counter to iterate between the 3 values
      use_synth synth
      play (hue[i]/Math.tan(70)) / 3 #,attack: dice(2)
      play ((hue[i]/Math.tan(40)).abs)/3 #,#decay: dice(2)
      sleep [0.25,0.5,1,2].choose
      if i < 4
        i+= 1
      end
    end
  end
end

#taking in the hue,loop name and attached synth, effect
def colorpalette1

  #colorpalette1
  stromboli =  [44,70,66]
  hampton = [230,209,169]
  teak = [180,150,109]


  color(stromboli, :stromboli,:chipbass,:ixi_techno)
  shadowColor(stromboli,:strombolishadow,:chipbass,:whammy)

  color(hampton,:hampton,:chipbass,:whammy)
  shadowColor(hampton,:hamptonshadow,:chipbass,:flanger)

  color(teak,:teak,:chipbass,:flanger)
  shadowColor(teak,:teakshadow,:chipbass,:ixi_techno)
end

def colorpalette2

  #colorpalette2
  summerGreen = [144,180,172]
  muleFawn = [143,63,43]
  sorrellBrown = [197,168,131]

  color(summerGreen,:summerGreen,:piano,:vowel)
  shadowColor(summerGreen,:summerGreenshadow,:piano,:flanger)

  color(muleFawn,:muleFawn,:piano,:pingpong)
  shadowColor(muleFawn,:muleFawnshadow,:piano,:pingpong)

  color(sorrellBrown,:sorrellBrown,:piano,:pingpong)
  shadowColor(sorrellBrown,:sorrellBrownshadow,:piano,:pingpong)
end

def colorpalette3


  #colorpalette3
  ecruWhite = [243,242,226]
  paleOyster = [149,144,129]
  capePalliser = [147,113,73]


  color(ecruWhite,:ecruWhite,:hollow,:vowel)
  shadowColor(ecruWhite,:ecruWhiteshadow,:hollow,:flanger)

  color(paleOyster ,:paleOyster,:hollow,:pingpong)
  shadowColor(paleOyster ,:paleOystershadow,:hollow,:pingpong)

  color(capePalliser,:capePalliser,:piano,:pingpong)
  shadowColor(capePalliser,:capePallisershadow,:hollow,:pingpong)
end

live_loop :coloring do

  counter = (0..25).to_a.shuffle()

  if counter[dice(25)] % 3 == 0 #if the number is divisible by 3
    colorpalette1()
  elsif counter[dice(25)] % 2 == 0   #if the number is divisible by 2
    colorpalette2()
  else
    colorpalette3()
  end


  sleep [1,2,4,8].choose
end


def chordsChoose(notes,minMaj,minMaj2,timeChord,dc,st)
  play chord(notes.choose, minMaj,decay: dc, sustain: st)
  play_pattern_timed chord(timeChord, minMaj2), [0.25,0.5].choose
  sleep [1,0.5,0.25,0.5,0.25,1].tick
end

def chordsTick(notes,minMaj,minMaj2,timeChord,dc,ak)
  play chord(notes.choose, minMaj,decay: dc, attack: ak)
  play_pattern_timed chord(timeChord, minMaj2), [0.25,0.5].tick
  sleep [1,0.75,0.5, 0.25].choose
end

#function for the arrangement

def arrangement(sound,bpm,preeffect,intensity,intensity2,loop,effect,effect2,effect3,effect4)

  use_synth sound
  use_bpm bpm

  with_fx preeffect,mix: intensity do
    live_loop loop do

      with_fx effect, mix: intensity2 do
        chordsChoose([:c4,:f4],:minor,:major,[:c5,:c5].tick,0,dice(3))
        chordsTick([:d3,:f3],:major,:major,[:f4,:d4].choose,2,1)
      end

      with_fx effect2, mix: 0.2 do
        chordsTick([:g3,:a3,:c3],:major,:major,[:g4,:f4].choose,3,dice(3))
        chordsTick([:e4,:a4,:c4],:major,:major,[:g4,:f4].choose,1,2)
      end

      with_fx effect3 do
        chordsChoose([:a3,:g3],:minor,:major,[:a4,:a4].tick,0,dice(3))
        chordsTick([:b2,:d2,:f4],:major,:major,[:g4,:f4,:d4].tick,1,dice(2))
      end

      with_fx effect4, mix: 0.1 do
        chordsTick([:f3,:b3],:major,:major,[:f4,:d4].choose,0,2)
        chordsTick([:g3,:a3,:c3],:major,:major,[:g4,:f4].choose,3,1)
        chordsTick([:d3,:b3],:major,:major,[:f4,:d4].choose,2,3)
      end

    end
  end
end

arrangement(:piano,60,:hpf,0.2,0.4,:arrangement1,:ixi_techno,:ping_pong,:ixi_techno,:ixi_techno)
arrangement([:fm,:prophet,:pretty_bell].choose,30,:lpf,0.3,0.5,:arrangement2,:ixi_techno,:gverb,:ixi_techno,:krush)
arrangement(:piano,30,:hpf,rrand(0.2,0.3),0.4,:arrangement3,:ixi_techno,:pitch_shift,:ixi_techno,:krush)
arrangement(:piano,15,:ping_pong,rrand(0.1,0.3),0.5,:arrangement4,:ixi_techno,:vowel,:ixi_techno,:ixi_techno)
arrangement([:fm,:prophet,:pretty_bell].choose,15,:ping_pong,rrand(0.1,0.3),0.5,:arrangement5,:ixi_techno,:pitch_shift,:ixi_techno,:ixi_techno)
arrangement(:chipbass,30,:vowel,rrand(0.1,0.3),0.5,:arrangement6,:ixi_techno,:pitch_shift,:ixi_techno,:ixi_techno)
arrangement(:dark_ambience,45,:whammy,rrand(0.2,0.7),0.4,:arrangement7,:ixi_techno,:ping_pong,:ixi_techno,:ixi_techno)
arrangement(:chipbass,15,:vowel,rrand(0.3,0.5),0.5,:arrangement8,:ixi_techno,:pitch_shift,:ixi_techno,:ixi_techno)