Membuat Animasi 3D Bola Dalam Kotak Menggunakan Processing

Membuat Animasi 3D Bola Dalam Kotak Menggunakan Processing








Assalamu'alaikum  Wr.Wb Teman Mahasiswa ,

Hai teman mahasiswa apa kabar semua ? semoga sehat selalu yaa dan selalu dilindungi oleh Allah SWT, amiinn :)

Kali ini kita akan membuat sebuah Animasi Bola Dalam Box 3D menggunakan Processing.

Untuk memberikan kesan 3D, animasi kali ini bisa kita putar-putar dengan mouse.




Baca juga :( Membuat Animasi Bergerak Perkotaan serta Lalu Lintas Menggunakan Processing )


Tanpa berlama-lama, berikut koding membuat animasi bola dalam box 3d menggunakan processing ;)



//Membuat Animasi Bola Dalam Kotak 3D Menggunakan Processing
//Catatans Mahasiswa :)

float frame = 0, speed = 1 / .0125, range = .125;
float rx = PI / 6, ry = -PI / 6, rmax = PI / 240;

void setup () {
size (256, 256, P3D);


}

void draw () {
if (!mousePressed) {
speed = constrain (dist (128, 128, mouseX, mouseY) /
128, 0, 1) * .02;
range = pow (constrain (dist (128, 128, mouseX, mouseY)
/ 128, 0, 1), 2) * .65;
} else {
rx = rx + (mouseX - pmouseX) * PI / width;
ry = constrain (ry - (mouseY - pmouseY) * PI / height, - HALF_PI, HALF_PI);
}

background (255);
translate (128, 128, -192);
rotateX (ry);
rotateY (rx);
noFill ();
stroke (0, 0, 0, 31);
box (256, 256, 256);
sphere(75);


frame += speed;
}

float cycle (float modifier, float displacement) { return cos ((frame * modifier + displacement) * TWO_PI) / 2; }

class sphere {
// constants
int maxchildren = 0;

// variables
float x, y, z, a, b ,c;
int len; sphere[] children;

// methods
sphere (float x, float y, float z) { this.x = x; this.y = y;
this.z = z; a = b = c; len = 0; children = new sphere[maxchildren]; }
sphere rotate (float a, float b, float c) { this.a = a;
this.b = b; this.c = c; return this; }
sphere link (sphere child) { children[len++] = child; return
this; }
sphere link (int which) { return children[which]; }

void draw (sphere parent) {
pushMatrix ();


rotateX (a); rotateY (b); rotateZ (c); translate (x, y,
z);

if (parent != null) { stroke (0); line (0, 0, 0, -x, -y,
-z); }
fill (159, 0, 191, 191); noStroke (); sphere (4);

for (int i = 0; i < len; ++i) children[i].draw (this);

popMatrix ();
}
}




Jangan lupa semua koding nya di copy-paste dan silahkan "Run" . :)


Jika ada kesalahan atau kekurangan dalam penyampaian tutorial maupun perkataan yang kurang jelas, kami mohon maaf sebesar-besarnya.

Jika ada kekurangan, jangan sungkan untuk berkomentar yaa.

Komentar kalian sangat berarti bagi perkembangan Blog ini , Terima kasih .. :)


Jangan lupa di share yaa :D wkwk
#Salam Teman Mahasiswa


Selamat mencoba dan semoga berhasil ;)

Disini saya menggunakan Processing 2.2.1 .
Untuk Aplikasi Processing nya bisa di ( Download Disini :) )




Wassalamu'alaikum wr.wb
Previous
Next Post »