The prompt for Genuary 2023 Day 17 is
Not A grid
For this prompt used a mixture of SonicPi,P5Js & Hydra to make the Emojional AntiGrid
Reused the Emojional Reflection post from a couple days ago and overlayed it with Hydra Code
Emojional AntiGrid takes the position of the emojis not wanting to partake in gridding
Since this is β Not A gridβ, Decided to reverse the SonicPi portion to fit the theme
***A look into the emojional lifestyle
as they would not be locked to a grid for a while
for a grid is a box
that they will not cross
they will rather tumble and toss
even if it puts them it a knot
for a grid lifestyle
they will permit? Not***
P5js Code
/*
Reflecting feelings is determining the feelings and emotions in a person's verbal and body language and stating (or reflecting) those feelings back to the person or client.
*/
function setup() {
background(100,90,200)
createCanvas(800, 800);
textSize(600)
textAlign(CENTER)
text('π‘',width/2,height/2)
text('π‘',width/2,height/1.5)
text('π‘',width/2,height/1.25)
textSize(400);
textAlign(CENTER)
text('π',width/2,height/2)
textSize(200)
text('π',width/2,height/2)
}
function draw() {
imageTweak()
textSize(126);
textAlign(CENTER)
if (second() % 30 > 15)
{
text('π', width/3 + sin(second() % 30 * 3), height/2 + random(-100,200));
text('π', abs(width -(width/3 + sin(second() % 30 * 3))), height/2 + random(-100,200));
text('π', width/2 + random(-100,200), height/2 - second() % 100 * 2);
text('π', width/4 - (second() % 45) * 5, height/1.5 - second() % 200 * 2);
}
else{
text('π€', width/2 - second() % 30, height/2);
text('π§', width/2, height/2 + second() % 100 * 2);
text('π§', width/1.5, abs(height + (height/2 + second() % 100 * 2)));
text('π', width/4, height/1.5 - second() % 100 * 2);
text('π', width/3, height/4 - second() % 100 * 2);
}
}
function imageTweak()
{
filter(BLUR, random(2,8))
if (second() % 40 > 17)
{
filter(GRAY)
}
if (second() % 30 > 15)
{
filter(DILATE);
}
else
{
filter(ERODE);
}
}
Hydra Code
osc([0.534, 6, 5, 8.438, 7, 8, 7].smooth(), -0.125, [0.5, 0.3, 0.1, 0.3, 0.5].smooth())
.modulate(voronoi(1))
.diff(voronoi(1.435)
.mult(gradient(-1)
.luma(0.125)))
.luma([0.125, 0.250, 0.375, 0.530, 0.250, 0.125].smooth())
.add(shape(7, 0.5)
.diff(voronoi(10, 2)
.blend(o0)
.diff(gradient(1))
.modulate(voronoi())))
.scrollY([-0.1, 0.2, -0.15, 0.2].smooth())
.scrollX([0.125, -0.1250, 0.1375, -0.2510].smooth())
.blend(o0)
.kaleid(() => (time % 130 + 0.1) / 12)
.blend(o0)
.blend(o0)
.blend(o0)
.out();
speed = 0.125;
SonicPi Code
#Reverse sound
def pianos(bpm,looping,effects,notes1,notes2,samples)
use_bpm bpm
live_loop looping do
with_fx :rbpf do
with_fx effects, mix: [0.2,0.3,0.4].tick do
use_synth :piano
play notes1 ,delay: dice(4), decay: dice(6)
play notes2,sustain: dice(5), attack: dice(7)
sample samples, beat_stretch: 0.9, amp: dice(3)
sleep [0.25,0.5,0.75,1,2,4].choose
end
end
end
end
pianos(60,:sound1,[:flanger,:whammy,:vowel].tick,[:A2,:C2,:C3,:E4,:G5].choose,[:A4,:C5,:E2,:E4,:G2].choose,:drum_bass_hard)
pianos(30,:sound2,[:ixi_techno,:vowel].choose,[:A4,:C5,:E2,:E4,:G2].choose,[:A2,:C2,:C3,:E4,:G5,:C2].choose,:drum_bass_soft)
pianos(60,:sound3,[:gverb,:ixi_techno,:wobble].choose,[:A2,:C2,:C3,:E4,:G5,:C2,:E4].choose,[:A4,:C5,:E2,:E4,:G2].choose,:tabla_ghe2)
pianos(30,:sound4,[:flanger,:vowel,:ping_pong].choose,[:A4,:C5,:E2,:E4,:G2].choose,[:A2,:C2,:C3,:E4,:G5].choose,:tabla_ghe1)
Β