Workspace
Workspace
Upload a rigged 3D model and the camera orbits the Y axis, rendering each direction and sampling the animation into the number of frames you ask for, then assembling everything into one transparent PNG sheet. Every direction shares the same camera pitch and the same frustum, so the character never changes size between directions. Rendering runs in your browser, so it costs no credits.
1Upload a model
A rigged GLB or GLTF. With a Mixamo skeleton, separate animation files drop straight in.
2Pick an animation
Use a clip bundled with the model, or upload a GLB that contains only animation.
3Set camera and cells
Direction count (4/8/16), frames per direction, cell size, projection and camera pitch.
4Export the sheet
One transparent PNG plus a JSON file with the rectangle of every cell.
| Input | Rigged GLB / GLTF (Mixamo skeleton recommended) |
|---|---|
| Output | Transparent PNG sheet + JSON metadata |
| Directions | 4, 8 or 16 |
| Credit cost | None — rendering runs in your browser |
| Camera | Orthographic or 15°/30°/50° lens, pitch 0°–60° |
| Engines | Unity, Godot, Phaser, RPG Maker, anything that reads a grid sheet |
The motion is only as good as the model you bring. Drop a generic walk cycle from an animation library onto a character and the things that should swing — a hair ribbon, a satchel, a coat tail — simply do not move; that secondary motion has to be authored on curves in 3D. Non-Mixamo skeletons may not accept external clips, and auto-rigging is not supported yet, so the model has to arrive rigged. A downscaled 3D render also reads differently from hand-placed pixel art.
No. The rendering happens on your own machine in the browser, so there is nothing to bill.
Not yet — it needs a skeleton. Run it through Mixamo or an auto-rigger first.
Either from clips inside your model, or from a separate GLB containing animation. Mixamo skeletons transfer directly.
That is deliberate. Baking root motion into a sheet walks the character out of the cell frame by frame; movement belongs in the engine.
Drop the PNG in and slice by the column and row counts from the JSON. In Godot, feeding individual frames to SpriteFrames is usually quicker.