SpritePilot Blog
Practical articles on sprite sheets, pixel-art animation, and getting 2D art into your game engine — with code samples and examples made in SpritePilot. Subscribe with the RSS feed.
- Free Animated Pickup Sprites: Coin, Gem and Heart (CC0) — October 14, 2026
Three matching 32 × 32 animated pickups — a spinning coin, a shining gem and a beating heart — free under CC0, with an atlas and setup for Godot, Unity and Phaser. - GIF or Video to Sprite Sheet Without a Huge File — October 14, 2026
Three seconds of 1080p video can need 746 MB as one sprite sheet. The math behind sheet size, the settings that shrink it, and measured results. - Onion Skinning: Animate Pixel Art Without Guesswork — October 14, 2026
What onion skinning shows, a key-poses-first workflow for pixel animation, how to check arcs and spacing against the ghost, and the mistakes it can cause. - Limited Color Palettes for Pixel Art: Why They Help and How to Pick One — October 14, 2026
Why a small palette makes pixel art read better, how to build hue-shifted color ramps, check them in grayscale, and start from palettes like DB32. - PNG, WebP or JPG for Game Sprites? File Size, Quality and Memory Compared — October 14, 2026
Which format to save sprite sheets in, with measured file sizes for PNG, lossless and lossy WebP and JPG, what JPG does to pixel art, and engine support. - Removing a Solid Background From Sprites Without a Halo — October 14, 2026
Why removing a magenta or white background leaves a colored fringe around sprites, what tolerance can and can't fix, and how soft edges remove it. - How to Scale Pixel Art Without Blurring It — October 14, 2026
Why scaled pixel art turns blurry or lumpy, and how to keep it crisp with nearest-neighbor, whole-number scales, CSS, canvas and engine settings. - Make Sprite Animations Loop Without a Hitch — October 14, 2026
Why looping sprite animations stutter at the seam, from duplicated frames to ping-pong that repeats its ends and easing in the wrong place, and how to fix each. - Sprite Pivot Points Explained: Center, Feet and Flipping — October 14, 2026
Where a sprite's pivot belongs, why characters jump when they flip or change frames, and how to set it in Unity, Godot, Phaser and SpritePilot. - How Big Can a Sprite Sheet Be? Texture Size Limits, Memory and Power of Two — October 14, 2026
Maximum texture sizes on real devices, how much memory a sprite sheet takes, when to split it, and when power-of-two sizes still matter in WebGL, Unity and Godot. - Sprite Sheet vs. Texture Atlas: What's the Difference? — October 14, 2026
Both put many sprites in one image. How a grid sheet differs from a packed atlas, what the atlas data file holds, and when each is the better choice. - Squash and Stretch for Sprite Animation (with a Bouncing Ball) — October 14, 2026
Why squash and stretch make sprites feel heavy and fast, how to keep the volume right with simple arithmetic, and when to use it, frame by frame. - Trimming Transparent Pixels From Sprites: Smaller Sheets Without Jitter — October 14, 2026
Trimming cuts the empty border off every frame. How much it saves, the three numbers an atlas keeps so frames stay put, and which engines use them. - How Many Frames Does a Walk Cycle Need? 4, 6 and 8 Compared — October 14, 2026
What 4-, 6- and 8-frame walk cycles keep and lose, how sprite size changes the choice, and how to match a walk to movement speed so feet don't slide. - Sprite Sheet Animation in JavaScript With Canvas (No Engine) — October 13, 2026
Play a sprite sheet on a canvas in plain JavaScript, with time-based frames, the 9-argument drawImage, crisp pixel art, sharp high-DPI output and a JSON atlas. - Animate a Sprite Sheet With CSS steps() Without Sliding or Skipped Frames — October 12, 2026
Play a sprite sheet with background-position and steps(), get the end value right, stop on the last frame, handle multi-row sheets and scale pixel art crisply. - Sprite Sheet Animation in Pygame, Step by Step — October 11, 2026
Load a sprite sheet in pygame, cut it into frames, animate at the same speed at any frame rate, flip and scale pixel art crisply, and draw with sprite groups. - Phaser: Loading Sprite Sheets and Texture Atlases (and Animating Them) — October 10, 2026
load.spritesheet, load.atlas or load.aseprite? How each one names its frames in Phaser 3 and 4, how to build animations from them, and when to use which. - Unity 2D Sprite Sheet Animation: From Sheet to Animated Character — October 9, 2026
Import, slice and animate a sprite sheet in Unity 6, with crisp import settings, Sprite Editor slicing, clips, Animator transitions and a C# script. - Godot 4 Sprite Animation: AnimatedSprite2D or AnimationPlayer? — October 8, 2026
When to animate a sprite sheet with AnimatedSprite2D or AnimationPlayer in Godot 4, how to set up each, and the GDScript to play, switch and flip. - How Fast Should Pixel Art Animate? Choosing a Frame Rate — October 7, 2026
Pixel art usually animates far slower than the game runs. How to pick a frame rate, when to hold frames instead, and why some rates look uneven. - How to Find the Frame Size of a Sprite Sheet — October 6, 2026
A sprite sheet with no notes? Work out its frame size, margin and spacing in a minute, check them, and enter them in Unity, Godot or Phaser. - Why Lines Appear Between Your Tiles (and How to Get Rid of Them) — October 5, 2026
Thin lines between tiles come from texture filtering at tile edges. Here's why they appear and how to fix them in Unity, Godot and Phaser.