SCAIL Pose Render
Turn pose sequences into the SCAIL cylinder-skeleton frames your video model feeds on
- pose_sequence
- pose_images
Every node in this pack up to this point has been producing abstract pose data. SCAILPoseRenderer is where it becomes pictures: it renders a pose sequence into the familiar SCAIL-style 3D cylinder skeletons - colored limbs on a transparent background - and outputs them as an image batch. Those frames are the currency your video generation actually consumes. In the pack's example workflows, they go into WanVideoAddSCAILPoseEmbeds in ComfyUI-WanVideoWrapper (driving the SCAIL-preview Wan model), which is the entire point: a stick figure you control, a real character the model animates along it.
How it works
The renderer uses Taichi on the GPU. Each skeleton's 18 joints are projected through a camera model defined by fov, limbs are drawn as 3D cylinders with per-bone colors, and each frame becomes an RGBA image (alpha composited down to RGB on output). The fov input default (55°) matches SCAILPoseFromDWPose's default, and the tooltip on that node tells you to keep them in agreement - they share one camera space, so render FOV and conversion FOV should be the same number.
The inputs you'll actually touch:
pose_sequence- the animated sequence fromSCAILBeatDrivenPose,SCAILAISTBeatDance,SCAILAISTFullSequence,SCAILCMUMotion, or the FBX node.width/height- output resolution (512×768 defaults; make them match what your video model expects).auto_half_resolution-trueby default, and it's a good default: render at half res then upscale, which is dramatically faster with barely visible cost. Turn it off only for final hero renders.fov- camera field of view; keep it matched to the conversion node.cylinder_pixel_radius- limb thickness (4 default). Thicker reads as bolder/cleaner at low res; thinner looks more skeletal.
Output is a single pose_images of type IMAGE - a batch of frames you can feed to WanVideoAddSCAILPoseEmbeds, a VHS_VideoCombine to preview the raw skeleton video, or any other image consumer.
Installing and troubleshooting
Pack-wide install: clone ckinpdx/ComfyUI-SCAIL-AudioReactive into ComfyUI/custom_nodes, pip install -r requirements.txt, restart, or use ComfyUI Manager. Taichi is the dependency to watch - it's in requirements, but Taichi GPU init occasionally fails on exotic setups, and this node does ti.init(arch=ti.gpu) with a try/except fallback. If you get a blank or missing render, the first suspects are a stale Taichi (upgrade it: pip install -U taichi) or the render FOV not matching the pose conversion FOV. Also remember this renders the skeleton: if your character's limbs look wrong, that's upstream in the pose generation, not a renderer bug.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| pose_sequence | SCAIL_POSE_SEQUENCE | Animated pose sequence from SCAILBeatDrivenPose | |
| width | INT | 51264–4096 | Output image width in pixels |
| height | INT | 76864–4096 | Output image height in pixels |
| auto_half_resolution | BOOLEAN | true | Render at half res then upscale. Faster. |
| fov | FLOAT | 55.0010–120 | Field of view in degrees |
| cylinder_pixel_radius | FLOAT | 4.001–20 | Thickness of skeleton limbs |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| pose_images | IMAGE | — |