Dalam tutorial ini, anda akan belajar cara mencipta animasi geometri yang dinamik dan berwarna-warni menggunakan p5.js. Animasi ini melambangkan idea bahawa "dunia ini penuh dengan orang yang hebat dan luar biasa melakukan perkara yang menakjubkan." Bentuk akan bergerak secara rawak merentasi kanvas, menukar warna dan mencipta kesan visual yang menawan.
Muat turun p5.js:
Buat Projek Baharu:
Mari mulakan dengan menyediakan struktur asas lakaran p5.js kami. Ini termasuk mentakrifkan fungsi persediaan() dan draw().
function setup() { createCanvas(windowWidth, windowHeight); noStroke(); // Disable stroke for the shapes } function draw() { background(30, 30, 60, 25); // Dark background with transparency }
Penjelasan:
createCanvas(windowWidth, windowHeight);: Ini menetapkan saiz kanvas agar sepadan dengan tetingkap penyemak imbas anda.
noStroke();: Ini mengalih keluar sempadan daripada bentuk yang akan kami buat.
background(30, 30, 60, 25);: Ini menetapkan warna latar belakang kepada biru tua dengan sedikit ketelusan, mencipta kesan mengekor untuk bentuk.
Sekarang, mari tambah kod untuk mencipta bentuk rawak dengan warna, kedudukan dan saiz yang berbeza-beza.
function draw() { background(30, 30, 60, 25); // Dark background with transparency for (let i = 0; i < 5; i++) { let x = random(width); let y = random(height); let size = random(20, 80); let colorR = random(255); let colorG = random(255); let colorB = random(255); let shapeType = random(['ellipse', 'rect', 'triangle']); fill(colorR, colorG, colorB, 150); // Set fill color with some transparency if (shapeType === 'ellipse') { ellipse(x, y, size, size); } else if (shapeType === 'rect') { rect(x, y, size, size); } else if (shapeType === 'triangle') { triangle(x, y, x + size, y, x + size / 2, y - size); } } }
Penjelasan:
Pembolehubah Rawak:
Jenis Bentuk:
Untuk memastikan kanvas berubah saiz dengan tetingkap, tambah fungsi berikut:
function windowResized() { resizeCanvas(windowWidth, windowHeight); }
Atas ialah kandungan terperinci Mencipta Animasi Geometri Dinamik dalam ms. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!