function generateHeartShape() { heartPoints = []; const centerX = width / 2; const centerY = height / 2; const pulse = 1 + Math.sin(pulseTime) * 0.05; const scale = 15 * pulse; const steps = Math.max(40, settings.numParticles); for (let i = 0; i < steps; i++) { const t = (i / steps) * Math.PI * 2; const x = centerX + scale * 16 * Math.pow(Math.sin(t), 3); const y = centerY - scale * (13 * Math.cos(t) - 5 * Math.cos(2 * t) - 2 * Math.cos(3 * t) - Math.cos(4 * t)); heartPoints.push({ x, y }); } }