In the previous post, we built sprite sheets for eight cat characters using XBRUSH — generating 4-frame attack animations from a single AI prompt.
This time we go one step further: Rigging Sheets — separating a character into individual body parts to drive skeleton-based animation.
Sprite Sheet vs. Rigging Sheet — What's the Difference?
Sprite Sheet: A Sequence of Frames
A sprite sheet is a set of fully drawn poses laid out frame by frame. Idle (frame 1) → Wind-up (frame 2) → Attack (frame 3) → Recovery (frame 4) — the animation plays by swapping these pre-drawn images in rapid succession.
It fits retro and pixel-art styles perfectly and is simple to implement. The downside: every new motion requires drawing all its frames from scratch. Run, jump, get hit, die — the more motion types you need, the number of required images grows exponentially.
Rigging Sheet: Separate Parts, Move with Bones
A rigging sheet breaks a character into individual images for each body part. Head, torso, upper arm, lower arm, hand, thigh, shin, foot, tail, weapon — each lives on its own layer.
Load these parts into a 2D skeletal animation tool like Spine or DragonBones, connect bones, and you can create any motion simply by rotating and translating the parts. One rigging sheet covers run, jump, attack, hit, and death — all of them.
When to Choose Each
Sprite Sheet | Rigging Sheet | |
|---|---|---|
Animation method | Frame swap | Bone rotation / translation |
Images needed | Motions × frames | Body part count (1 set) |
Cost to add motion | High (new frames required) | Low (bone manipulation only) |
Expression limit | Only pre-drawn poses | Free real-time control |
Best for | Retro, pixel art, fighting | Mobile, RPG, adventure |
Special effects (explosions, magic blasts) or transformations where the character shape changes dramatically still favor sprite sheets. But for a game where a character needs to talk, walk, and fight across many motions, rigging is far more efficient.
Creating a Rigging Sheet in XBRUSH
The key to a rigging sheet prompt is explicitly requesting separated body parts. You're not asking for a finished character — you're asking for each part drawn independently.
Rigging Sheet Prompt Structure
2D game character rigging sheet, white background, cartoon/pixel art style.
[Character description] — separated body part layout:
- Head (ears and expression included)
- Torso (outfit/armor included)
- Upper arm right / left
- Lower arm right / left
- Hand right / left
- Thigh right / left
- Shin right / left
- Foot right / left
- Tail (2–3 segments)
- Weapon (placed separately)
Each part positioned with joint connection points in mind.
Sufficient spacing between parts on white background for clear separation.
Consistent style and color palette throughout.Cat Archer Rigging Sheet Prompt Example
2D game character rigging sheet, white background, cartoon/pixel art style.
Cat Archer character — separated body part layout:
- Head: cat ears, green eyes, brown hood
- Torso: leather vest and belt, quiver separate
- Upper arm R/L, lower arm R/L, hand R/L
- Thigh R/L, shin R/L, foot R/L
- Tail (3 segments)
- Longbow (wooden)
- Arrow (nocked on string)
Ample spacing between parts on white background. Position each part
so pivot points (joint connections) are clearly visible.
Consistent brown/green color palette throughout.Using the finished character as a reference when generating the rigging sheet helps maintain style consistency. In XBRUSH, you can drop the reference image in and add the rigging sheet prompt on top.
Post-Processing After XBRUSH
The rigging sheet image from XBRUSH isn't game-ready yet. A few post-processing steps are needed.
Step 1: Separate Parts (Photoshop / GIMP)
Cut each body part from the generated sheet into individual files. Use Photoshop's Slice tool or GIMP's rectangle selection to create a layer per part and export each as PNG.
Keep pivot points (rotation anchors) in mind while cutting. The upper arm pivots at the shoulder end; the lower arm pivots at the elbow. Consistency here matters when you set pivots later in Spine.
Step 2: Background Removal (XBRUSH)
Bring each part image back into XBRUSH and apply Background Removal. This converts the white background to a transparent PNG. XBRUSH's AI traces part outlines precisely — fur and equipment details are handled cleanly.
Step 3: Texture Atlas
Pack the separated PNGs into a single Texture Atlas. Tools like TexturePacker generate an optimized atlas image and a coordinate data file automatically. Loading one atlas is significantly more performant than loading dozens of individual images at runtime.
Step 4: Import into Spine / DragonBones and Set Up Skeleton
Load the part images into Spine (paid) or DragonBones (free).
Create bones — build a hierarchy: root → spine → upper/lower body → arms/legs.
Attach images to slots — bind each part image to its corresponding bone.
Set pivot points — adjust each bone's rotation anchor to match the joint position.
Set up IK constraints — applying Inverse Kinematics to arms and legs means you only need to place the hand or foot; the full limb follows naturally.
Step 5: Create Animations
With the skeleton complete, every motion is made by manipulating bones on a timeline.
idle — subtle up-and-down breathing motion
walk / run — alternating arm and leg movement
attack — weapon swing
hit — recoil motion
die — collapse motion
All of these from one set of images — that's the power of rigging.
Integrating with Game Engines
Unity
Use the official Spine for Unity runtime plugin. Drop Spine's exported .atlas, .json, and texture files into the Unity Assets folder, then control animations in code via the SkeletonAnimation component.
// Spine for Unity — switching animations
skeletonAnimation.AnimationState.SetAnimation(0, "attack", false);
skeletonAnimation.AnimationState.AddAnimation(0, "idle", true, 0);Godot
For DragonBones, add the DragonBones for Godot plugin; for Spine, use godot-spine. Godot 4 also includes a built-in 2D skeleton system (Skeleton2D), so you can import part images directly and rig them without a third-party tool.
HTML5 / Phaser
Use Spine's WebGL runtime or DragonBones' web runtime. The same rigging animations play identically in browser-based games.
Combining Sprite Sheets and Rigging Sheets
In practice, many games use both approaches together.
Character body → Rigging sheet (all motions from one set)
Special attack effects → Sprite sheet (explosions, magic, hit sparks)
UI icons and items → Individual PNG sprites
For the Cat Archer: rig the character body for idle, walk, and jump; handle the arrow-in-flight and hit-impact effects as separate sprite sheets. That split keeps production efficient while achieving the visual quality each element needs.
Tools Used
XBRUSH AI generation — generate rigging sheet images with separated body part layout
XBRUSH Background Removal — convert part images to transparent PNG
Photoshop / GIMP — cut individual part files from the generated sheet
TexturePacker — pack parts into an optimized texture atlas
Spine / DragonBones — skeleton setup and animation authoring
Unity / Godot / Phaser — apply via Spine runtime plugin in-engine