How to use the Sprite Pivot Editor
- Drop a sprite sheet and check the detected grid.
- Click on the big frame view to place the pivot, or use a preset: center, bottom-center, top-left or feet (auto-detected from the lowest pixels).
- Step through frames with the arrows or , and . keys, nudging pivots with the arrow keys (Shift = 4 px).
- Watch the preview: frames are drawn aligned on their pivot over a ground line, so any jitter is obvious.
- Set FPS, per-frame durations and loop mode, then export generic, Aseprite-style or Godot-style JSON.
What you get
- Generic JSON: frame rects, pivot in px and 0–1, durations, fps, loop
- Aseprite-style JSON (json-array with frameTags)
- Godot-friendly JSON (regions, offsets, relative durations)
Tips from making games with it
- 'Feet' finds the bottom-center of the visible pixels in each frame, which is the right pivot for most side-view characters.
- Onion skin draws the previous frame aligned by its pivot, so you can line up a foot or the head between frames precisely.
- Hold a key frame longer by giving it its own duration: anticipation and impact frames often want 2–3× the base time.
- Re-importing an exported JSON restores the pivots and FPS, so you can come back and adjust later.
Use cases
- Removing jitter from AI-generated or traced animations
- Setting attack and jump origins that differ per frame
- Preparing sheets for engines that read per-frame origins
- Handing off timing data to a programmer
FAQ
What is a pivot?
The point of a frame that sits at the sprite's position in the game. For a character that's usually between the feet, so it stands on the ground no matter how the frame is drawn.
Why does my animation slide or jitter?
The character isn't in the same place in every frame. With a per-frame pivot the engine can compensate, and the preview here shows the result before you export.
Which formats can I export?
A generic JSON with everything, an Aseprite-style json-array with frame tags and normalized pivots, and a Godot-style JSON with regions and offsets relative to the frame center.
Can I import pivots back?
Yes. Any of the three exported formats can be loaded again to restore pivots, durations and FPS.
Does it change my image?
No. The sheet stays as it is; only the JSON data is exported.
Is my sheet uploaded?
No. Everything happens locally in your browser.