WCCC_Landscape

ForestBuildUp

For this week's Creative Code challenge by @sableRaph: "Landscape“,ForestBuildup takes Locomotion, SonicPi & Hydra code to make a glitchy forest that is being rendered for the user to explore

Poem

Which colors of the leaves
Represent your mood?
Which content of this time,
You want to view?
Want to witness
So it adds extra value
Acts as as glue

Video

Code

Locomotion

dancer { url = "test_proto_nograss.glb", size = range 0.35 4 (osc 0.075)};
dancer { url = "Garden.glb", size = range 0.35 4 (osc 0.075)};
dancer { url = "Garden.glb", size = range 0.15 2 (osc 0.1375)};
dancer { url = "Garden.glb", size = range 1 6 (osc 0.075), z = 13};
dancer { url = "Garden.glb", size = range 2 8 (osc 0.075), z = 14};
dancer { url = "Garden.glb", size = range 3 9 (osc 0.0175), z = 4};

SonicPi

#l stands for line of poetry



l1 = ("under".to_i(32) - "&".to_i(32) + "beneath".to_i(32) - "the".to_i(32) + "sea".to_i(32) ) % 2024
l2 = ("what".to_i(32) - "is".to_i(32) + "in".to_i(32) - "this".to_i(32) + "deep".to_i(32) - "void".to_i(32) ) % 2024
l3 = ("below".to_i(36) - "to".to_i(32)  - "join".to_i(32)) % 2024
l4 = ("or".to_i(36) + "willing".to_i(33) - "to".to_i(32) + "flee".to_i(27)) % 2024


live_loop :dance do
  use_random_seed Time.now.to_i / 3
  with_fx :ping_pong do
    use_bpm l4/l3
    sample [:glitch_perc1,:glitch_perc3,:glitch_bass_g].tick, amp: 1.5, rate: [l3/l4,l4/l3,l1/l4,l2/l3].tick + 0.1 if spread(l2,l1).look
    sleep [0.5,1,2,4,8].choose
  end
end

live_loop :dance1 do
  use_random_seed Time.now.to_i / 2
  with_fx :ping_pong do
    sample [:bd_zome,:ambi_piano,:elec_bong].choose, amp: 1.5, rate: [l3/l4,l4/l3,l1/l4,l2/l3].choose + 0.1 if spread(l2,l1).look
    sleep [0.25,0.5,1,2].choose
  end
end

live_loop :dance2 do
  use_random_seed Time.now.to_i
  with_fx :ixi_techno do
    sample [:guit_e_fifths,:elec_chime,:bd_boom].choose, pitch: 7, pitch_stretch: [1,2].tick, amp: 1.5, rate: [l3/l4,l4/l3,l1/l4,l2/l3].choose + 0.1 if spread(l2,l1).look
    sleep [0.25,0.5,1,2,4].choose
  end
end

Hydra

s0.initScreen()

src(s0).modulatePixelate(src(s0).scale(0.5),1145).modulateRotate(src(s0).scale(0.25)).out()

speed = 0.0025
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