For the16th day of NaPoWriMo/ NaPoGenMo 2024, “Lurking Haiku” is Coded with #Locomotion & #SonicPi. To give motion and feeling to the Haiku written
Poem
LinkingQuietlyWherever the Dreams may LeadAs they Continue
Video
Code
Locomotion Code
point {color = 0x5555A7, x = 0, y = range -33 (osc 2), z = 4};
directional { colour=0xf00f80, intensity = range 02 (osc 0.5), z = range 017 (osc 1), y = 10, x = range -66 (osc 1.4) };
b n = dancer {url = "https://raw.githubusercontent.com/IllestPreacha/CreativeDataStuff/8f284bda83b0a6f57920cef8d00187aec69494cb/3Dmodel/Haiku_3D.glb",
size = ((n +8)/5) + 6, y = range 4-4 (osc 0.15),
x = 0 + (n/5 + 1), z = range -55 (phase 1 (n/50) * 2 + (-2)), rx = n * 23.7};
for [0..5] b;
SonicPi Code
defSine_ing(looping,samp1,samp2,samp3)
rangeFul = (0..17).to_a.shuffle() #shuffling a range of numbers from 0 to 17 into an array#setting counters
i = 0
j = rangeFul.length()
#setting the live loop
live_loop looping do
with_fx :echo, mix: Math.sin(j).abs do
with_fx :distortion,mix: Math.sin(i).abs do#If the sin makes the number a negativeif Math.sin(rangeFul[i]) > 0
sample [samp1,samp3].choose,rate: Math.sin(rangeFul[i])
endendend
with_fx :ping_pong, mix: Math.sin(i).abs do#If the sin makes the number a positiveif Math.sin(rangeFul[i]) > 0
sample [samp2,samp3].choose
endend
with_fx :ixi_techno, mix: Math.sin(j).abs do
with_fx :vowel, mix: Math.cos(j).abs do#If the sin makes the number 0if Math.sin(rangeFul[i]) == 0
sample [samp1,samp2].choose
endendend
i += 1if i >= rangeFul.length()
i = 0end
j -= 1if j <= 0
j = 0end
sleep [Math.sin(i).abs + 0.25,Math.sin(j).abs + 0.25].choose #to avoid the issue with zeroendend
sample
Sine_ing(:SineFul,:tabla_ghe5,:drum_bass_soft,:elec_blip)
Sine_ing(:SineFul2,:ambi_dark_woosh,:perc_snap2,:glitch_perc5)
Sine_ing(:SineFul3,:ambi_piano,:ambi_haunted_hum,:vinyl_backspin)