海外の方からのコメントがあったり、いいねが多くもらえる作品が作れたりと、うれしいことが多かった月でした。
マスク処理やfilter()での被写界深度表現、blendMode()の組み合わせ、タイリング、など、いろいろな可能性を探ってみた月でした。
int i;float j,t;
— はぅ君 (@Hau_kun) September 2, 2019
void setup(){size(720,720);}
void draw(){
clear();
t+=.01;
loadPixels();
for(i=0;i<518400;i++){
for(j=0;j<29;j++){
if(sin(t)*100>dist(i%720,i/720,noise(j,t)*720,noise(j,t,2)*720)){
pixels[i]=color(i%19==0?255:128);
}
}
}
updatePixels();
}#つぶやきProcessing pic.twitter.com/MU0CTdG6nN
float r=1,x,y;
— はぅ君 (@Hau_kun) September 3, 2019
void setup(){size(720,720);clear();}
void draw(){
blendMode(r%2==0?ADD:SUBTRACT);
for(y=360/r;y<720;y+=720/r){
for(x=360/r;x<720;x+=720/r){
fill(random(255),random(255),random(255),64);
circle(x,y,720/r);
}
}
r=(++r)%15;
}#つぶやきProcessing pic.twitter.com/X5oUQMVRk4
float[][] p=new float[9][2];int i;float t;
— はぅ君 (@Hau_kun) September 4, 2019
void setup(){size(720,720);}
void draw(){fill(255,16);t+=.01;
for(i=0;++i<9;){
p[i][0]=cos(i*t)*360+360;p[i][1]=sin(i*t)*360+360;
}
for(i=0;++i<7;)triangle(p[i][0],p[i][1],p[i+1][0],p[i+1][1],p[i+2][0],p[i+2][1]);
}#つぶやきProcessing pic.twitter.com/I2uR4SzLdP
float[][] f=new float[69][2];int i;float t;void setup(){size(720,720);}void draw(){clear();fill(-1,99);f[0][0]=noise(t+=.2)*720;f[0][1]=noise(t,9)*720;for(i=69;–i>0;){f[i][0]=f[i-1][0];f[i][1]=f[i-1][1];}beginShape(10);for(;++i<69;)vertex(f[i][0],f[i][1]);}#つぶやきProcessing pic.twitter.com/FL6hYznhic
— はぅ君 (@Hau_kun) September 5, 2019
float d,t,p;int H=360;
— はぅ君 (@Hau_kun) September 6, 2019
void setup(){size(720,720);}
void draw(){clear();t+=.02;
for(d=0;d<TAU;d+=.01){
stroke(d*20,128,d*40);
p=t*cos(d)/3;
line(cos(p*d)*cos(d+t)*H+H,sin(p*d)*cos(d+t)*H+H,cos(p*d+.1)*cos(d+.1+t)*H+H,sin(p*d+.1)*cos(d+.1+t)*H+H);
}
}#つぶやきProcessing pic.twitter.com/P1KtTM0uiQ
float d,t;
— はぅ君 (@Hau_kun) September 7, 2019
void setup(){size(720,720);}
void draw(){
clear();noStroke();blendMode(32);
t+=.01;
translate(360,360);
fill(92,0,196);
beginShape(9);
for(d=0;d<TAU;d+=PI/32){
vertex(cos(4*d+t)*sin(d*t)*360,sin(4*d+t)*sin(d*t)*360);
}
endShape();
}#つぶやきProcessing pic.twitter.com/7jrjLKdlbX
float d,t,x,y;
— はぅ君 (@Hau_kun) September 8, 2019
void setup(){size(720,720);}
void draw(){clear();blendMode(32);translate(360,360);t+=.01;
beginShape(17);
for(d=0;d<TAU;d+=PI/6){
fill(128,255,d*30);
x=cos(d+t)*360;y=sin(d+t)*360;
vertex(x,y);vertex(y,x);vertex(-x,-y);vertex(x,-y);
}
}#つぶやきProcessing pic.twitter.com/DxSYzp867q
時折見える二等辺三角形が好き
float d,t,x,y;
— はぅ君 (@Hau_kun) September 9, 2019
void setup(){size(720,720);}
void draw(){clear();blendMode(32);translate(360,360);t+=.03;
beginShape(TRIANGLES);
for(d=0;d<TAU;d+=PI/32){
fill(d*30,32,255);
x=cos(d+t)*360;y=sin(d+t)*360;
vertex(x,y);vertex((x-y)/2,(x-y)/2);
}
}#つぶやきProcessing pic.twitter.com/pCPJIInZXF
座標計算を少し特殊な感じにして、左上と右上にねじれができている
float[] p=new float[99];float t;
— はぅ君 (@Hau_kun) September 10, 2019
void setup(){size(720,720);rectMode(3);}
void draw(){
clear();
for(int i=0;i<99;i++,t+=.0003){
resetMatrix();
translate(i*7,(p[i]+=noise(i)*5)%720);rotate(noise(i)*t);scale(sin(noise(i)*t*9),1);
rect(0,0,19,40);
}
}#つぶやきProcessing pic.twitter.com/yEgmN8sFnh
rect()の縦横比は一万円札と同じ
float r,d,s,W=360;
— はぅ君 (@Hau_kun) September 11, 2019
noStroke();
size(720,720);
for(r=W;r>=0;r-=20){
d=0;
s=random(TAU);
while(d<=TAU){
fill(r/4,d*30,d*8+99);
beginShape(11);
vertex(W,W);
vertex(cos(s+d)*r+W,sin(s+d)*r+W);
vertex(cos(s+(d+=random(PI/2)))*r+W,sin(s+d)*r+W);
}
}#つぶやきProcessing pic.twitter.com/8OFNkRjtb4
海外の人からコメントついたり、いっぱいいいねがもらえたので嬉しい
float r,d,s,W=360;
— はぅ君 (@Hau_kun) September 12, 2019
size(720,720);
strokeWeight(2);
for(r=W*2;r>0;r-=20){
d=0;
s=random(TAU);
fill(0,s*20,255-r/3);
circle(W,W,r*2);
while(d<=TAU){
line(cos(s+(d+=random(70/r)))*r+W,sin(s+d)*r+W,cos(s+d)*(r-20)+W,sin(s+d)*(r-20)+W);
}
filter(BLUR,1);
}#つぶやきProcessing pic.twitter.com/7545brqrWA
float r,d,s,W=500;
— はぅ君 (@Hau_kun) September 12, 2019
size(720,720);
for(r=W*2;r>0;r-=20){
d=0;
s=random(TAU);
fill(32,r/8,s*40);
ellipse(W,W,r*2,r);
while(d<=TAU){
line(cos(s+(d+=random(70/r)))*r+W,sin(s+d)*r/2+W,cos(s+d)*(r-20)+W,sin(s+d)*(r-20)/2+W);
}
filter(BLUR,0.8);
}#つぶやきProcessing pic.twitter.com/4vRroGGiHn
石畳の街路にある広場みたいなものをイメージ
float r,t;
— はぅ君 (@Hau_kun) September 14, 2019
void setup(){size(720,720);colorMode(3);}
void draw(){
for(r=1800;r>0;r-=50,t+=.0001){
filter(11,1);
fill((r+t)%255,r/8,255-r/9);
resetMatrix();
translate(360,500+sin(r+t*9)*r/9);
scale(1,.5);
rotate(r+t*3);
square(-r/2,-r/2,r);
}
}#つぶやきProcessing pic.twitter.com/VvPrEERjEa
レンダリングにものすごい時間がかかった。。
float t,i;
— はぅ君 (@Hau_kun) September 15, 2019
void setup(){size(720,720);blendMode(ADD);noFill();strokeWeight(9);}
void draw(){
clear();
t+=.03;
for(i=30;i–>0;){
stroke(i*8,99,255-i*6,64);
resetMatrix();translate(360,360);scale(sin(t+i/9),1);rotate(t);
square(-270+i*5,-270+i*5,540-i*9);
}
}#つぶやきProcessing pic.twitter.com/6aasU2zM3v
float r,d,W=360,t;
— はぅ君 (@Hau_kun) September 16, 2019
void setup(){size(720,720);fill(-1,4);}
void draw(){
square(-1,-1,722);
for(r=W*2;r>0;r-=30){
d=0;
stroke(64,r/2,255-r/3,99);
while(d<=TAU)
line(cos((d+=noise(r,t+=.00001,d)))*r+W,sin(d)*r+W,cos(d+.1)*(r-30)+W,sin(d+.1)*(r-30)+W);
}
}#つぶやきProcessing pic.twitter.com/Wxhagf69DD
float t,d;
— はぅ君 (@Hau_kun) September 17, 2019
void setup(){size(720,720);}
void draw(){
clear();
t+=.02;
scale(120);
translate(3,3);
for(d=0;d<TAU;d+=.2){
blendMode(d<PI?DIFFERENCE:ADD);
fill(32,32,d*30+60);
bezier(cos(d),sin(d),cos(d+t),sin(d+t),cos(d-t),sin(d-t),cos(d+t)*3,sin(d-t)*3);
}
}#つぶやきProcessing pic.twitter.com/redHKnSm53
翼みたい
int t,i;
— はぅ君 (@Hau_kun) September 18, 2019
void setup(){size(720,720);colorMode(HSB,16);}
void draw(){clear();noStroke();blendMode(BLEND);fill(-1);
for(i=-1;i++<64;)rect(i%8*90,i/8*90,75,75,sin(t++/1000.0+i)*50);
blendMode(MULTIPLY);
for(i=0;i++<480;){stroke(i%16,9,16);line(i*3,0,0,i*3);}
}#つぶやきProcessing pic.twitter.com/Y9BYpdNxxo
そこに負の値を入れたら変わった形になったので組み合わせてみたもの
float t,i;
— はぅ君 (@Hau_kun) September 19, 2019
void setup(){size(720,720);colorMode(HSB,9);}
void draw(){clear();blendMode(BLEND);
t+=.02;
fill(9);
for(i=-1;i++<9;)rect(72*i,sin(i*3+t)*200+200,72,320);
blendMode(MULTIPLY);
for(i=-1;i++<9;){
fill(i,9,9);
rect(cos(i+t)*250+250,72*i,220,72);
}
}#つぶやきProcessing pic.twitter.com/vCjN4mWkZ6
float i=0,t,s;
— はぅ君 (@Hau_kun) September 21, 2019
void setup(){size(720,720);}
void draw(){clear();blendMode(8);fill(-1);
for(;i++<72;s=(t+=.0002)+i/9)circle(noise(i,(int)s)*720,noise(i,(int)s,9)*720,sin(s*PI)*99);
blendMode(128);for(;i–>0;){fill(99,i*3,255);rect(i*9,sin(i+t)*324+324,9,72);}
}#つぶやきProcessing pic.twitter.com/JzO4O3JWND
float t;
— はぅ君 (@Hau_kun) September 22, 2019
void setup(){size(720,720);}
void draw(){
for(int i=0;i<160;i++){
fill(0,noise(i,t+=.00005)*255,0);
resetMatrix();
translate(i%10*99+(i/10%2==0?0:50),i/10*50-50);
scale(noise(i,(int)t)>.5?cos(t*PI):1,1);
rotate(PI/4);
square(0,0,72);
}
}#つぶやきProcessing pic.twitter.com/qQis5HrIHO
float t,s,i;
— はぅ君 (@Hau_kun) September 23, 2019
void setup(){size(720,720);colorMode(HSB,72);}
void draw(){
clear();
blendMode(ADD);
t+=.005;
for(i=0;i<99;i++){
s=t+i/10;
fill(noise((int)s,i)*72,72,72,36-(s%1)*72);
circle(noise((int)s,i,4)*720,noise((int)s,i,9)*720,sin(s*PI)*99);
}
}#つぶやきProcessing pic.twitter.com/8WVkDMoVwm
noise()にfloatの値を入れて、(int)することで、一定時間だけ固定値の乱数を作れる
float x,y;
— はぅ君 (@Hau_kun) September 24, 2019
size(720,720);
noStroke();
clear();
for(int i=0;i<231;i++){
x=i%11*72+(i/11%2==0?0:36);
y=i/11*36;
fill(0,255,255,64);
circle(x,y,72);
fill(128,192,255);
ellipse(x,y,9,18);
ellipse(x,y,18,9);
circle(x-18,y-18,6);
circle(x+18,y-18,6);
}#つぶやきProcessing pic.twitter.com/ZjVwNZt24h
円をタイル状に配置
float x,y,z,w;
— はぅ君 (@Hau_kun) September 25, 2019
size(720,720);
clear();
for(int i=0;i<121;i++){
x=i%11*72+(i/11%4)*18-48;
y=i/11*72;
z=x+72;
w=y+72;
fill(128+i,128+i,255-i,192);
bezier(x,y,z,(y+w)/2,x,(y+w)/2,z,w);
bezier(x,w,(x+z)/2,y,(x+z)/2,w,z,y);
circle(x,(y+w)/2,15);
}#つぶやきProcessing pic.twitter.com/4U2QNgkpWt
int i,j;
— はぅ君 (@Hau_kun) September 26, 2019
size(720,720);
clear();
for(j=0;j<2;j++){
for(i=0;i<440;i++){
float x=i%20*36;
float y=i/20*36-36+(i%3)*12;
strokeWeight(j==0?20:5);
stroke(j==0?color(64,32+i/4,160):color(192,192,64));
line(x,y,x+36,y+(i%2==0?48:-36));
}
}#つぶやきProcessing pic.twitter.com/MFofk8d62Z
float x,y;
— はぅ君 (@Hau_kun) September 27, 2019
size(720,720);
background(192,160,32);
strokeWeight(5);
for(int i=0;i<121;i++){
x=i%11*72+(i/11%3-1)*24;
y=i/11*72;
stroke(0);
fill(64,96,192);
circle(x,y,36);
noStroke();
fill(-1,64);
circle(x+sin(random(TAU))*5,y+sin(random(TAU))*5,15);
}#つぶやきProcessing pic.twitter.com/j1vjQz68au
float[] p=new float[4];
— はぅ君 (@Hau_kun) September 28, 2019
int[] o={12,0,0,12,24,12,12,24};
int i,j,r=0;
size(720,720);
strokeWeight(10);
for(i=0;i<900;i++){
for(j=0;j<2;j++){
r=(r+1+(int)random(3))%4;
p[j*2]=i%30*24+o[r*2];
p[j*2+1]=i/30*24+o[r*2+1];
}
line(p[0],p[1],p[2],p[3]);
}#つぶやきProcessing pic.twitter.com/fSBhTds9vg
int i,j;
— はぅ君 (@Hau_kun) September 29, 2019
size(720,720);
rectMode(CENTER);
for(i=0;i<441;i++){
for(j=36;j>0;j-=4)
square(i%21*36+i/21%2*18,i/21*36,j);
}
for(i=0;i<144;i++){
for(j=48;j>0;j-=3)
ellipse(i%12*72+i/12%4*18-18,i/12*72,j%2==0?j/2:j,j%2==0?j:j/2);
}#つぶやきProcessing pic.twitter.com/NrlTAwcDdC
float d,t,a,b;
— はぅ君 (@Hau_kun) September 30, 2019
void setup(){size(720,720);noStroke();}
void draw(){
background(-1);
fill(64,64,192,128);
t+=.01;
for(d=0;d<TAU;d+=.01){
a=cos((d+t)*4);
b=sin(d*8)*100;
circle(cos(d+t)*(250+a*b)+360,sin(d+t)*(250+a+b)+360,sin(2*d+t*4)*20);
}
}#つぶやきProcessing pic.twitter.com/RZ2WxGrkhB
コメント