WCCChallenge_Architecture

WCCChallenge_Architecture

Planetary Architects

InnerSchematics

For this week's Creative Code Challenge by @sableraph: "Architecture", InnerSchematics is coded in LiveCodingYoutube, Locomotion & SonicPi to examine the works of some Intergalactic Landscape Architects.

"Landscape architects conceptualize, design, plan and manage the construction of natural, cultural and built landscape development for commercial projects, office complexes, parks, golf courses and residential development." - Job Bank Canada

Landscaping Process

The Landscaping Architecture was done by merging and remixing three former Locomotion Code submissions of WCCC:

In this case, Landscape Architects were tasked with building a world with the specs from those Locomotion Choreos. Which can be seen from both the external presentations and the inner mechanisms that run that planet.

Poem

Building the Improbable
Whimsical, magical
Entities, Planets and Buildings
Where Thoughts are Constantly Swimming
Trees are Grinnings
The moon is Singing
The Sun is Dimming
What is Improbability?
When does an Planet Architect,
Looks and Self-reflects
That this build, might be out of their depth?

Video

Code

Locomotion


-- Scene Setup
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 1 6 (osc 0.075), z = 13};
dancer { url = "Garden.glb", size = range 2 8 (osc 0.075), z = 14};
camera { y = range -3 9 (osc 0.075), z = range 2 10 (osc 0.0075), x = range-3 3 (osc 0.0015) };

--purple is #800080

point {x = range 0 17 (osc 0.15), z = range 0 6 (osc 0.35) , intensity = range 8 25 (osc 0.5), color = 0x800080  };

c = hsv (step [0,1/3,1/3,2/3,2/3,2/3,1/3,1/3,1/3,0,0] (phase 1 0)) 0.2 (range 0.5 1 (osc 0.09));
c1 = hsv (step [0.5,1/3,1/3,2/3,0.5,2/3,2/3,1/3,1/3,1/3,0.5,0] (phase 1 0)) 0.3 (range 0.15 0.25 (osc 0.09));
c1c = hsv (step [0.5,1/3,1/3,2/3,0.5,2/3,2/3,1/3,1/3,1/3,0.5,0] (phase 1 0)) 0.47 (range 0.25 0.75 (osc 0.09));
cc = hsv (step [0,1/3,1/3,2/3,2/3
,2/3,1/3,1/3,1/3,0,0] (phase 1 0)) 0.7 (range 0.5 1 (osc 0.09));

--Lighting

ambient {intensity = range -4 8 (osc 0.15)};
point {color = rgb 200 170 135, x = 0, y = 3};
directional { colour= rgb 100 150 35, intensity = range 0 4 (osc 0.5), z = range 0 17 (osc 0.8), y = 10, x = -6 };

-- making a variable to use throughout
move = (osc 0.10);

-- background
clear { colour= 0x51414F, alpha= 1.5 };

-- the boxes
box { colour = cc,rx = range 0 180 (move), y = range -3 3 (move), size = range -3 3 (move) };
box { colour = c1,rz = range 0 180 (move), x = range -2 2 (move),size = range -2 2 (move) };
box { colour = c1c,rz = range 0 180 (move),z = range -20 2 (move), y = range - 3 3 (move), x = range -3 3 (move),size = range -2 2 (move) };
box { colour = c, ry = range 0 180 (move), z = range -2 2 (move),size = range -1 1 (move) };

--magicavoxel usage

dancer {url="https://raw.githubusercontent.com//IllestPreacha/CreativeDataStuff//7aa243f3043429f88cb44eda132d85e96863541b/3Dmodel/cubemix1.glb", size = 2,ry = range 0 15 (osc 0.25), y = range -0.1 0.1 (osc move), z = range -2 2 (move),size = range -1 1 (move) };
dancer {url="https://raw.githubusercontent.com//IllestPreacha/CreativeDataStuff//7aa243f3043429f88cb44eda132d85e96863541b/3Dmodel/cubemix2.glb", size = 2,ry = range 180 270 (osc 0.25), x = 3,z = range -2 2 (move),size = range -1 1 (move) };
dancer {url="https://raw.githubusercontent.com//IllestPreacha/CreativeDataStuff//7aa243f3043429f88cb44eda132d85e96863541b/3Dmodel/cubemix3.glb", size = 2,ry = range 0 360 (osc 0.25), y = 4, z = range -2 2 (move),size = range -1 1 (move) };

r2 = step [3,4,5,6] (phase 4 0);
r = step [0.5,2,1,4] (phase 16 0);

-- ube Evolution
dancer { url="https://raw.githubusercontent.com//IllestPreacha/CreativeDataStuff//7aa243f3043429f88cb44eda132d85e96863541b/3Dmodel/cubemix1.glb", size = 0.5, x = range -15 15 (osc 0.0015), dur = 2, y= range -10 0 (osc 0.0015), z = -20, rx = range 0 15 (osc 0.25) };
f a n = dancer { url="https://raw.githubusercontent.com//IllestPreacha/CreativeDataStuff//7aa243f3043429f88cb44eda132d85e96863541b/3Dmodel/cubemix1.glb", y = 1, x = -4 + n, z = a * n,ry = range -30 90 (osc 0.5), lz = range -45 130 (osc 3),size = 0.3 };

for [0..8] (f 0.5);
for [0..8] (f 1.5);
for [0..8] (f -0.5);


--mushroom floor
for [0..100]  (\n -> dancer {url = "https://raw.githubusercontent.com//IllestPreacha/CreativeDataStuff//7aa243f3043429f88cb44eda132d85e96863541b/3Dmodel/cubemix1.glb", dur = n*0.5, x = (n)+(-20), y = -4 + osc(1) * sin(n), z = -10, rx = r2 * r2 * r2, ry = 0, rz = 0, size= r});

LiveCodingYoutube

angle1 = "Nu1V6X-xPNw"
angle2 = "pyX4pw0WKvk"

create(1,2, angle1)
cue(1,angle2)

jump([0,1],10,10)
jump([0,1],0.-5,0.-5)
speed(0,0.75)
speed(1,3)
play(all)

SonicPi

live_loop :dosage do
  use_bpm 20
  use_random_seed (Time.now.to_i)/2
  with_fx [:echo,:wobble,:krush].choose, mix: rrand(0.25,0.55) , amp: 1 do
    sample [:ambi_drone,:ambi_glass_hum,:elec_fuzz_tom,:elec_beep].choose,beat_stretch: [1,0.5,0.8].choose, rate: [0.5,0.4,0.3,0.2,0.3,0.4].tick
    sleep [0.5,1,2].choose
  end
end


live_loop :bell do
  with_fx [:ixi_techno,:flanger,:ping_pong].choose, mix: rrand(0.2,0.7) do
    use_random_seed (Time.now.to_i)
    use_bpm [120,80,220].choose
    sample [:perc_bell,:elec_bell,:loop_electric].choose, rate: (rrand 0.125,1.85)
    sleep rrand(0.2,2)
  end
end



live_loop :rollback2 do
  #making true random as it goes with the actual time
  #then using the Math.cbrt to make it a different seed ratio then the above function
  use_random_seed Math.cbrt(Time.now.to_i)
  use_bpm 45
  puts Time.now.to_i
  with_fx [:echo,:whammy,:distortion].choose, mix: rrand(0.1,0.6) do
    with_fx [:ping_pong,:distortion,:krush].choose, mix: rrand(0.1,0.9) do
      sample [:perc_swoosh,:perc_swoosh,:perc_snap].choose ,beat_stretch: [1,2,3,0.5].tick, sustain: 4, rate: Math.sqrt(dice(25) + 1)/3
      sleep [0.5,1,2,4,8].choose
    end
  end

  with_fx [:flanger,:ixi_techno].choose, mix: rrand_i(0.1,0.9) do
    with_fx :gverb, mix: [0.1,0.2,0.3,0.2,0.1].tick do
      live_loop :drumming2 do
        use_bpm 24
        sample 'E:/Creatuve Code Challenges/SciArtSeptember_2023/simian/MonkeyScreaming.wav', beat_stretch: 10, rate: rrand(0.5,1.25)
        sleep [8,16,32,64].choose
      end
    end
  end

  sleep [0.5,1,2].choose
end


live_loop :rollback3 do
  #making true random as it goes with the actual time
  #then using the Math.cbrt to make it a different seed ratio then the above function
  use_random_seed Math.cbrt(Time.now.to_i)
  use_bpm [45,90,90,90,135].tick
  puts Time.now.to_i
  with_fx [:echo,:whammy,:distortion,:pitch_shift].choose, mix: rrand(0.1,0.6) do
    with_fx [:ping_pong,:distortion,:krush].choose, mix: rrand(0.1,0.9) do
      sample [:loop_mehackit1,:perc_swoosh,:glitch_robot2,:glitch_robot1].choose ,beat_stretch: [1,2,3,0.5].tick, sustain: 4, rate: Math.sqrt(dice(25) + 1)/3
      sleep [0.5,1,0.25].choose
    end
  end
  sleep [0.5,1,2].choose
  with_fx :flanger, mix: rrand(0.3,0.5) do
    with_fx :echo do
      use_synth [:pretty_bell, :kalimba, :prophet].choose
      play rrand(100,120), attack: dice(6)
    end
  end
end

live_loop :sequencer2 do
  use_random_seed Math.cbrt(Time.now.to_i)
  with_fx :vowel, voice: [1,2,2,3,3,4,3,2,1,2,1].choose, mix: [0.1,0.5,0.9].choose do
    with_fx :ping_pong, mix: [0.1,0.3,0.5,0.7,0.5,0.3,0.1].tick do
      sample [:elec_ping ,:elec_blip ,:perc_bell,:elec_bong,:perc_impact2,:perc_till].tick, rate: [1.1,0.2,1.3,0.4,1.5,0.3,1.4,0.2,1.1].choose
      sleep rrand(0.2, 4)
    end
  end
end


live_loop :blips do
  with_fx :reverb do
    use_random_seed Time.now.to_i % 100 #making true random as it goes with the actual time
    puts Time.now.to_i
    use_bpm 120
    sample [:elec_blip,:elec_blip2,:elec_bong].choose, pan: rrand(-0.9,0.9)** 3, rate: rrand(-1.5, 1.5) ** 3
    sleep [0.5,1,2].choose
  end
end