The approach I took to creating a composition was a reverse engineering build-up where I found sounds and combinations that I enjoy and after finding those who sounded cohesive joined them into a composition. I wanted to create a more whimsical or alien-like energy to the work when choosing the sounds that I liked as I noticed several of the dirt samples had a high-pitched noise that went well really together. There was a main part that I thought brought together the composition which ended up being my A that is repeated. With that I integrated the other parts, creating the pattern A-B-A-C pattern. I tried to experiment with several of the techniques we learnt in class to find which ones fit into my work which helped out a lot in getting a hang of them, I think the part I focused the most on was creating a visual and audio fade out which was initially a transition, but then ended up looking like a great way end the work on a high instead. Which you see at the end when the screen goes fades into fight with a rising sound matching the rise in brightness in part C.

Hydra code

render()

shape(100, ()=> 0.65-cc[3])
  .scale(1,1,() => window.innerWidth / window.innerHeight)
  .scroll(0.5,()=> -0.5+cc[1])
  .invert(()=>cc[0])
  .modulateKaleid(voronoi(55))
  .colorama(1.2).posterize(4).saturate(0.7).contrast(6)
  .blend(
    shape(4, 100),()=>cc[5]
  )
  .blend(osc(30,0.0001,0.75)
      .colorama(0.5)
      .mult(osc(20,0.0001,0.2).modulate(noise(3,1)).rotate(0.4))
      .modulateScrollY(osc(2)).modulate(osc().rotate(),.011), ()=>cc[8]
  )
  .rotate(11,()=>cc[6]/127)
  .blend(shape(10,0.5).modulatePixelate(osc(25,0.5),100).colorama(0.5),()=>cc[7])
  .out(o0)

shape(100, ()=> 0.65-cc[3])
  .scale(1,1,() => window.innerWidth / window.innerHeight)
  .scroll(0.5,()=> -0.5+cc[1])
  .invert(()=>cc[0])
  .modulateKaleid(osc(55))
  .colorama(1.2).posterize(4).saturate(0.7).contrast(6)
  .blend(
    shape(4, 100),()=>cc[5]
  )
  .out(o0)

shape(100, ()=> 0.65-cc[3])
  .scale(1,1,() => window.innerWidth / window.innerHeight)
  .scroll(0.5,()=> -0.5+cc[1])
  .invert(() => 1 - cc[0])
  .color(() => 0.2 + cc[2], 0, 1)
  .modulateKaleid(osc(55),0.1,1)
  .blend(
    shape(4, 100),()=>cc[5]
  )
  .out(o1)


shape(100, ()=> 0.65-cc[3])
  .scale(1,1,() => window.innerWidth / window.innerHeight)
  .scroll(0.5,()=> -0.5+cc[1])
  .invert(() => 1 - cc[0])
  .color(() => 0.2 + cc[2], 0, 1)
  .modulateKaleid(osc(55),0.1,1)
  .blend(
    shape(4, 100),()=>cc[5]
  )
  .out(o2)

shape(100, ()=> 0.65-cc[3])
  .scale(1,1,() => window.innerWidth / window.innerHeight)
  .scroll(0.5,()=> -0.5+cc[1])
  .invert(()=>cc[0])
  .modulateKaleid(osc(55),0.1,1)
  .colorama(1.2).posterize(4).saturate(0.7).contrast(6)
  .blend(
    shape(4, 100),()=>cc[5]
  )
  .out(o3)

hush()

Tidal Code

--A
d1 $ stack[
  s "bass1 ~ <bass1 dr_few:2> ~" # room 0.4,
  s "bd bd*4 bd ~" # room 2,
  s "hh*8" # gain 0.75,
  ccv "0 127" # ccn "0" # s "midi",
  ccv (segment 128 $ range 0 127 saw) # ccn "1" # s "midi",
  s "feelfx*8" # note (scale "major" "1 1 3 5"-24) # room 1,
  s "tink:1 tink:2 tink:4 tink:5" # room 2,
  ccv "0 30 60 127" # ccn "2" # s "midi",
  ccv "0 60" # ccn "8" # s "midi"
]

xfade 1 silence

--B
d1 $ stack [
  ccv "60" # ccn "8" # s "midi",
  s "pluck:2 pluck:3",
  ccv "0 127" # ccn "6" # s "midi"
]

d1 $ qtrigger $ seqP [
  (0, 10, ccv "0 127" # ccn "6" # s "midi"),
  (0, 10, ccv "0 0 0 60 60 0 0 0" # ccn "7" # s "midi"),
  (0, 10, ccv 0 # ccn "8" # s "midi"),
  (0, 4, s "feelfx*8" # note (scale "sine" "0 0 0 2 2 0 0 0"-24) # room 0.8),
  (0, 4, s "pluck:2 pluck:3" # distort 0.2 # room 0.8),
  (4, 6, s "feelfx*8" # note (scale "sine" "0 0 0 2 2 0 0 0"-24) # room 0.6),
  (4, 6, s "pluck:2 pluck:3" # distort 0.2 # room 0.6),
  (6, 8, s "feelfx*8" # note (scale "sine" "0 0 0 2 2 0 0 0"-24) # room 0.4),
  (6, 8, s "pluck:2 pluck:3" # distort 0.2 # room 0.4),
  (8, 10, s "feelfx*8" # note (scale "sine" "0 0 0 2 2 0 0 0"-24) # room 0.2),
  (8, 10, s "pluck:2 pluck:3" # distort 0.2 # room 0.2)
]

--A

d2 $ stack[
  s "bass1 ~ <bass1 dr_few:2> ~" # room 0.4,
  s "bd bd*4 bd ~" # room 2,
  s "hh*8" # gain 0.75,
  ccv "0 127" # ccn "0" # s "midi"
]

d1 $ stack[
  ccv (segment 128 $ range 0 127 saw) # ccn "1" # s "midi",
  s "feelfx*8" # note (scale "major" "1 1 3 5"-24) # room 1,
  s "tink:1 tink:2 tink:4 tink:5" # room 2,
  ccv "0 30 60 127" # ccn "2" # s "midi"
]

--C

d2 $ stack [
  "reverbkick!4" # room 1.2,
  "realclaps*8" # room 1,
  fast 8 $ ccv (segment 128 $ range 0 127 tri) # ccn "3" # s "midi"
]


d1 $ qtrigger $ filterWhen (>0) $ seqP [
  (0, 2, s "juno:9" # room 0.2),
  (2, 4, s "juno:9" # room 0.65),
  (4, 6, s "juno:9" # room 0.85),
  (6, 8, s "juno:10" # room 1),
  (6, 10, slow 4 $ ccv (segment 128 $ range 0 127 saw) # ccn "5" # s "midi"),
  (8, 10, fast 2 $ s "juno:9*16" # room 1.2)
]

xfade 2 silence

hush

d1 $ stack [
  ccv 0 # ccn "0" # s "midi",
  ccv 0 # ccn "1" # s "midi",
  ccv 0 # ccn "2" # s "midi",
  ccv 0 # ccn "3" # s "midi",
  ccv 0 # ccn "4" # s "midi",
  ccv 0 # ccn "5" # s "midi",
  ccv 0 # ccn "6" # s "midi",
  ccv 0 # ccn "7" # s "midi",
  ccv 0 # ccn "8" # s "midi"
]

Demo