#What you'll learn
- How exported sheets are laid out and what every field in the JSON means.
- How to place characters in your engine using the pivot, frame sizes and per-frame timing.
- How to draw your own parts that fit every frame, and how they're licensed and credited.
- How recipes, credits and character names travel to other apps, and how to keep Pixxara in sync.
#Before you start
- Work through Pixxava — Intermediate: body bases, animation sets, scale and the gallery.
- For custom parts you'll need a pixel editor, ideally Pixxivi.
- Know whether your engine wants one sheet per character or packed atlases (for atlases, use Pixxula).
#How-tos
#How to read the sheet layout
- Export Sheet + JSON (zip). The zip holds <name>.png, <name>.json and, when the character has credits, CREDITS.txt.
- Every frame is a square cell of the same size. Each row is one animation in one direction, in the order the set lists them (all animations for the first direction, then the next direction).
- Each row is as wide as the longest animation in the set; shorter animations leave empty cells at the end of their row.
- The JSON rows list tells you exactly which row is which.
#How to load the JSON in your engine
The JSON has these fields:
| Field | Meaning |
|---|---|
| frameWidth, frameHeight | cell size in pixels, after scaling |
| tier, scale | the character's size before scaling, and the export scale |
| columns | cells per row |
| rows[] | one entry per row: row, direction, animation, frames, fps, loop, durations (milliseconds per frame) |
| pivot | the anchor point in a cell: horizontally centred, at the bottom |
| base | ozzbit (Hero) or classic |
| credits | who made the base art, with links (always present on the Hero) |
| recipe | the character's full recipe, so it can be rebuilt |
| licences | the licence of every part used, including your own imported parts |
- For each row, slice frames cells starting at column 0.
- Use durations for timing rather than fps: the Hero's animations keep their original hand-tuned timing (idle frames are a little longer than the rest).
- Loop the row when loop is true; play it once otherwise (hurt and death, for example).
#How to anchor characters correctly
- On the classic body, the character's feet stand on the second-to-last row of the cell and the pivot is the bottom centre. Use the pivot as your sprite's origin.
- The Hero stands higher in its 128 × 128 cell (the figure is 32 pixels tall, with room around it for jumps, wall slides and the combo's sword swings). Set your engine's origin at the Hero's feet as drawn rather than at the cell bottom.
- Multiply any pixel position by scale if you exported above 1×.
- If you need exact per-frame hitboxes, send the sheet to Pixxeta; it can box head, torso and legs from the character's rig.
#How to draw a custom part that fits every frame
- Set the size you want the part for (classic body: the Size buttons; the Hero is always 128 × 128).
- Open Export → Template and click Download the template. It's the full sheet with the body drawn as a colour-coded mannequin: head cyan, torso green, near arm pink, far arm magenta, near leg light blue, far leg dark blue.
- Draw your part (a helmet, a cape, a weapon) on a new layer over the template in your pixel editor, frame by frame, following the colours. Keep the same sheet size and layout.
- Hide or delete the mannequin and save only your part as a transparent PNG.
- In Pixxava, click Import part (or Import a part…), choose the PNG, and fill in Name, Slot, Author and Licence.
- The part appears under Your parts in its slot. Select it like any other part.
#How to manage licences and credits
- The Licences section lists every part in use and its licence, including your imported parts (for example CC-BY 4.0, CC-BY-SA 4.0, OGA-BY 3.0, My own work, free for any use or My own work (all rights reserved)).
- On the Hero body, the base body and its animations come from the Male Hero Template by Ozzbit Games. Pixxava credits it in the body panel, under the stage, in Licences, in every JSON credits field and in CREDITS.txt.
- Keep those credits in your game's credits screen; they also travel with everything you send to other apps.
#How to keep a portrait in Pixxara up to date
- Every character you send carries its recipe and credits. Pixxara uses the character name (from the recipe) to recognise later versions.
- After changing the character, send it again (or save it to the Library) under the same name.
- In Pixxara, select the speaker and click Check for updates, then Update from Pixxava. The speaker is re-rigged in place; Pixxara also checks by itself after you sign in.
- Renaming the character in Pixxava breaks the link: Pixxara will treat it as a new character.
#Workflows
#A consistent cast at several sizes
- Design the lead on the classic body at 32 px and export a Recipe.
- Switch Size to 16 for an overworld map and 64 for close-ups. Every part is redrawn for each size, with more detail (stripes, buttons, brows, eye whites) as the size allows.
- Export one sheet per size with the same Animations set so your engine can swap them.
#Team pipeline with recipes
- Store each character's Recipe (.pxava.json) next to your game's source files.
- Anyone on the team can drop the recipe onto Pixxava to get the exact character back and export at a new scale or set.
- Use Flow to track the steps: Pixxava → Pixxeta → Pixxula → Pixxizi, with the recipe as the source of truth.
#From part sheet in the Library
- Draw a part sheet in Pixxivi on the downloaded template and send it to the Library as a sprite sheet.
- Open it in Pixxava from Library: a sheet in the template layout goes straight to the part importer. Pixxava tells you the size it expects if the sheet is too small.
#Tips and shortcuts
- The classic body's sizes are 16, 24, 32, 40, 48 and 64 pixels; frames are always square.
- Character data is saved in this browser automatically; your gallery and imported parts too. Cloud saves the current character, the gallery and your parts together.
- Styles never touch body, face, hair or skin, so you can restyle a finished character without losing its identity.
- When nothing covers the hips (and chest on female bodies), Pixxava adds plain underwear automatically.
- A palette sent to Pixxava recolours only the regions the character actually uses.
#Troubleshooting
- If your custom part doesn't appear, check the Size: parts only show at the size they were drawn for.
- If an imported part is offset, it was drawn on a template of another size or animation set. Download the template again at the current size and redraw on it.
- If Pixxara doesn't offer an update, check the character still has the same name in Pixxava and that you sent or saved the new version to your Library.
- If animation speed looks wrong in your engine, read durations per frame instead of fps.
- If the Hero floats or sinks in your game, set the origin at its drawn feet, not at the cell's bottom edge.