Recently we have shared a lot of cool animations about HTML5 Canvas, most of which are particle-related animations. For example, this HTML5 Canvas mouse over particle squeeze animation and HTML5 Canvas 3D green particle animation are very good. This time I will also introduce a Canvas-based HTML5 particle animation. The particles form a grid shape. When the mouse moves in the grid, the grid particles move with the mouse, and the mouse will glow around.
Advertisement
body{ margin: 0; background: #000; } canvas{ background: #000; width: 100vw; height: 100vh; }
function create(){ var d = 20; for(var i=-1; ++i<wide;){ var x = Math.floor((((cb.width-padding*2) / (wide-1)) * i) + padding) * ratio; for(var j=-1; ++j<high;){ var y = Math.floor((((cb.height-padding*2) / (high-1)) * j) + padding) * ratio; dots.push({ x: x, y: y, ox: x, oy: y }); } } } create(); function render(){ ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height); ctx.fillStyle = '#fff'; for(var i=0;i<dots.length;i++){ var s = dots[i]; var v = getV(s) ctx.beginPath(); ctx.moveTo(s.x, s.y); ctx.lineTo(s.x + v.x, s.y + v.y); ctx.strokeStyle = '#333' ctx.lineWidth = 1 * ratio ctx.stroke(); ctx.closePath(); } for(var i=0;i<dots.length;i++){ var s = dots[i]; var v = getV(s) ctx.circle(s.x + v.x, s.y + v.y, s.size * ratio, true); ctx.fill(); } }
Advertisement