Install Player-animator, Version 0.9.9 Or Later. Review
<canvas id="demoCanvas" width="64" height="64"></canvas> import Player from 'player-animator'; const canvas = document.getElementById('demoCanvas'); const ctx = canvas.getContext('2d');
// 2. Draw the current frame on each animation tick player.onFrame = (frameIndex) => { const sx = (frameIndex % 4) * 32; // X offset in sprite sheet const sy = 0;
// Frame size frameWidth: 32, frameHeight: 32, install player-animator, version 0.9.9 or later.
ctx.clearRect(0, 0, canvas.width, canvas.height); ctx.drawImage( player.image, sx, sy, 32, 32, 0, 0, 64, 64 ); };
import Player from 'https://unpkg.com/player-animator@0.9.9/index.js'; Let’s animate a simple sprite sheet. Assume you have a sprite sheet character.png with 4 frames (each 32×32 pixels) in a row. // Loop forever loop: true, // Speed: frames
// Loop forever loop: true,
// Speed: frames per second fps: 12,
If you’ve ever tried to build a sprite‑based animation system from scratch in JavaScript, you know how quickly it becomes messy: frame counters, manual canvas clearing, speed adjustments, and state management. That’s why I was excited to discover Player‑Animator – a tiny, no‑dependency library that makes sprite sheet animations a breeze.