xbrush logo | Blog
Docs Pricing
English 한국어
Go to App
Docs Pricing Go to App
UseCaseGuide

How to Build Animation-Ready Character Part Sheets with AI

Generate character rigging sheets with separated body parts using XBRUSH, then set up skeleton animation in Spine or DragonBones. Full post-processing covered.
Byoul Oh's avatar
Byoul Oh
Mar 20, 2026
How to Build Animation-Ready Character Part Sheets with AI
Contents
Sprite Sheet vs. Rigging Sheet — What's the Difference?Sprite Sheet: A Sequence of FramesRigging Sheet: Separate Parts, Move with BonesWhen to Choose EachCreating a Rigging Sheet in XBRUSHRigging Sheet Prompt StructureCat Archer Rigging Sheet Prompt ExamplePost-Processing After XBRUSHStep 1: Separate Parts (Photoshop / GIMP)Step 2: Background Removal (XBRUSH)Step 3: Texture AtlasStep 4: Import into Spine / DragonBones and Set Up SkeletonStep 5: Create AnimationsIntegrating with Game EnginesUnityGodotHTML5 / PhaserCombining Sprite Sheets and Rigging SheetsTools UsedRelated PostsFrequently Asked Questions

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.

8 cat character sprites

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.

XBRUSH sprite sheet workflow

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.

XBRUSH rigging sheet output

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.
Cat Archer reference character

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).

  1. Create bones — build a hierarchy: root → spine → upper/lower body → arms/legs.

  2. Attach images to slots — bind each part image to its corresponding bone.

  3. Set pivot points — adjust each bone's rotation anchor to match the joint position.

  4. 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


Related Posts

  • How to Make 2D Game Sprite Sheets with AI — 8 Characters in One Session
  • 4-Frame vs 9-Frame Sprites — When Do You Need More Frames?
  • The Solo Indie Dev's AI Art Workflow — Cut Production Time Without Cutting Quality

Frequently Asked Questions

Q: What is the main advantage of a rigging sheet over a sprite sheet for a solo developer?

A rigging sheet requires only one set of body part images to cover all character motions — idle, walk, attack, hit, and death. With a sprite sheet, each new motion requires a full set of new frames. For a solo developer managing a large character roster, rigging dramatically reduces the total number of images to generate and maintain.

Q: How well does XBRUSH's AI separate body parts cleanly enough for rigging use?

XBRUSH generates the body parts as a layout on a single canvas rather than pre-cut files, so post-processing in Photoshop or GIMP is needed to separate them. XBRUSH's Background Removal then handles the transparent PNG conversion for each cut piece. The AI-generated spacing between parts is generally clean enough to work with, though some manual cleanup around joint boundaries may be needed.

Q: Is Spine required, or can I use XBRUSH-generated rigging parts with free tools?

DragonBones is a free alternative to Spine that accepts the same type of separated part images. Godot 4 also has a built-in Skeleton2D system that works directly with PNG part images without requiring any third-party tool. For browser-based games using Phaser, both Spine's WebGL runtime and DragonBones' web runtime are available.

Share article
xbrush logo
Lightweight Inc.
CEO Yunho Yeon | Business Registration 208-87-02239
E-commerce Registration 2026-Seoul Seocho-1518
Unit 306, Seoul AI Hub, 47 Maeheon-ro 8-gil, Seocho-gu, Seoul, South Korea
contact@lightweight.kr
Resources
Blog User Guide
Terms and Policy
Terms of Service Privacy Policy Cookie Policy
Customer Service
Mon–Fri 10:00 AM – 6:00 PM (KST)
+82-507-1336-9329
contact@lightweight.kr
Copyright ⓒ 2026 Lightweight Inc. All Rights Reserved.