Latihan 1 dari materi Canvas Animation Lanjutan di Web Animation — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Implementasikan particle system simulator (logika murni, tanpa Canvas API sungguhan).
createParticle(x, y, vx, vy, life) — kembalikan object { x, y, vx, vy, life, maxLife: life, opacity: 1 }.
updateParticle(particle, dt) — kembalikan partikel baru dengan:
x += vx * dt, y += vy * dtlife -= dtopacity = Math.max(0, life / maxLife) dibulatkan ke 2 desimalalive = life > 0createParticleSystem(maxParticles) — kembalikan { particles: [], maxParticles }.
emitParticle(system, particle) — tambahkan partikel ke system jika belum penuh, kembalikan system yang sudah diperbarui.
updateSystem(system, dt) — perbarui semua partikel, hapus yang sudah mati.