Pose Batch From Library
Many Skeletons, Zero Fuss
- skeletons
- labels
Sometimes you don't want the full 14-pose RPG set - you want your three poses: idle, walk_01, and attack. CP_PoseBatchFromLibrary is the lightweight cousin of CP_GenerateRPGSheet that loads exactly the library poses you name, as a batch of skeleton images plus labels.
It's one of those "it's literally a wrapper" nodes: under the hood it calls the same generator that powers GenerateRPGSheet, so the two behave identically except for defaults and intent. This one defaults to a small custom list (idle,walk_01,walk_02,attack), where the sheet generator defaults to the curated RPG sequence.
How it works
Feed it a comma-separated list of pose names (newlines are also accepted, conveniently). Each name is resolved against the pack's built-in poses/ directory, scaled to your width/height, and drawn as an OpenPose skeleton. Missing files become labeled placeholder frames - <name>(missing) - so the batch count stays stable and you can spot the gap at a glance.
The inputs that matter
- pose_names - the only interesting one. Comma- or newline-separated, default
idle,walk_01,walk_02,attack. The library haswalk_01..04,run_01..04,idle(plus_se/_ne/_sidevariants),jump(plus_se/_ne),fight_se/ne_01/02,work_se/ne_01/02, and the legacyattack,death,hurt. - width / height - canvas size, 1024 square default.
Outputs: skeletons (an IMAGE batch, one per pose, in your listed order) and labels (pose names, newline-joined). Wire the batch into a render loop, a preview, or CP_ExportSpriteSheet for a quick sheet.
Installing
Part of Spit8/_ComfyUI_CharacterPose:
cd ComfyUI/custom_nodes
git clone https://github.com/Spit8/_ComfyUI_CharacterPose
pip install -r _ComfyUI_CharacterPose/requirements.txt
Restart ComfyUI; it's under CharacterPose/Sheet.
Gotchas
- Labels come back as one newline-joined string, not a list - split on
\nif you need them individually. - Pose names are matched by file stem, so
walk_01andwalk_01.poseboth work;walk-01won't. Typos produce placeholder frames, not errors, so check your labels. - If you just want a single pose as a
POSEobject (not a batch of images), useCP_PoseLibraryLoadinstead - that one hands you the actual pose object rather than a drawn skeleton.
Same job as the RPG sheet node, fewer poses, fewer decisions. When you know exactly which three poses you need, this is the clean route.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| pose_names | STRING | idle,walk_01,walk_02,attack | — |
| width | INT | 102464–4096 | — |
| height | INT | 102464–4096 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| skeletons | IMAGE | — |
| labels | STRING | — |