WCCC_Orbits
Orbits, Math & Glitch
Updated
•3 min read
OrbitalMashUp
For this week's Creative Code challenge by @sableRaph: " Orbits”, OrbitalMashUp envisions a solar system where the orbits aren’t quite aligned. Coded with LiveCodeLab & HydraVideoSynth with its soundtrack coded in SonicPi.
Poetry
Planets Packaging
Their stars and orbits
To the other galaxies
Altering their extremities
To finalise the proximities
That they are not bounded to keep
Or seek
The orbits are the culprits
In the clashing of the galaxies
And what is it,
That they really want to be able to see
Video
Code
LiveCodeLab
simpleGradient color((time % 30)*7 + 24,abs(sin(time) * 244),(cos(time) * cos(time)) * 255), color(255 - (time % 45 * 5),200/time % 12 + 1,155),color(154 + time % 30 * 2,155 - sin(time)* 50,tan(time)/sin(time) - 0.2)
if time % 6 > 3
animationStyle motionBlur
if time % 30 > 20
simpleGradient color(154 + time % 30 * 2,155 - sin(time)* 50,tan(time)/sin(time) - 0.2),pink,orange
if time % 30 < 10
simpleGradient aqua,color((time % 30)*7 + 24,abs(sin(time) * 244)),blue
if time % 30 < 20 && time % 30 > 10
simpleGradient color((time % 30)*7 + 24,abs(sin(time) * 244),(cos(time) * cos(time)) * 255), color(255 - (time % 45 * 5),200/time % 12 + 1,155),color(154 + time % 30 * 2,155 - sin(time)* 50,tan(time)/sin(time) - 0.2)
if time % 15 > 10
ambientLight 100,20,200
fill color((time % 30)*7 + 24,abs(sin(time) * 244))
stroke yellow
if time % 15 < 5
ambientLight 255,255,0
fill orange
stroke color((time % 30)*8 + 24,abs(sin(time) * 244))
if time % 15 < 10 && time % 15 > 5
ambientLight 200,125,90
fill color(154 + time % 30 * 2,155 - sin(time)* 50,tan(time)/sin(time) - 0.2)
stroke color(154 + time % 30 * 2,155 - sin(time)* 50,tan(time)/sin(time) - 0.2)
if time % 12 > 6
rotate (time % 4 + 1)/9,(time % 4 + 1)/9,(time % 4 + 1)/9
move (time % 12 +1)/12
else
move (time % 12 +1)/12,(time % 12 +1)/12,(time % 12 +1)/12
rotate sin(time),cos(time),tan(time)
ball
resetMatrix // Reset here to keep the upper Portion and Lower Portion seperate
pushMatrix
rotate time, sin(time) * sin(time), Math.hypot((time % 6), sin(time))
pushMatrix // bookmark the position after the rotation
move (sin(time)*0.5) * (sin(time)*2), tan(time) /12
ball 0.75
move 0.5, 0, 0
pushMatrix
move ((sin(time)*0.5) * (sin(time)*2)), tan(time) /12 * -1
ball 0.25
popMatrix
popMatrix
move -0.5, 0, 0
ball
resetMatrix // resets the position
rotate time, sin(time) * sin(time), Math.hypot((time % 6))
scale sin(time) * sin(time) / 2, time % 3 + 1, time % 3 + 1
ball
popMatrix
HydraVideoSynth
s0.initScreen()
src(s0).scale(1.5).repeat(2,1).modulateScale(src(s0).pixelate(50,100).scrollX([0.25,-0.15,0.05])).
scrollY([0.15,-0.13,0.05]).out()
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
sample
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
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
end




