This article explains the data types used by sockets in the node graph and what can be connected where.
Quick rule
Most processing nodes operate on a Spine Payload. Atlas-related nodes operate on an Atlas Project or Sprites. Use ValidatorNode when you’re unsure what a socket expects.
Socket types
- Spine Payload — runtime-friendly representation of the Spine project used by most processing nodes.
- Atlas Project — atlas metadata + page images used by atlas nodes.
- Sprites — unpacked sprite images/regions (Atlas Unpacker → Asset Viewer / Atlas Repacker).
- JSON — original or reconstructed Spine JSON for diagnostics/validation/diffing.
- Changes — a list/stream of diffs produced by some optimizers and used by viewer/reporting nodes.
Key → type → connect to
| Socket key (examples) | Data type | Produced by | Connect to |
|---|---|---|---|
payload, payload_in, payload_out | Spine Payload | InputNode, most processing nodes | Processing nodes (RDP/Spline/Refit/Quantizer/Cleanup/etc.), then OutputNode.payload |
original_json | JSON | InputNode | DiagnosticNode, JSONDiffNode.json_before, OutputNode.original_json, some atlas nodes (e.g. repacker alpha mode) |
reconstructed_json_out | JSON | OutputNode | JSONDiffNode.json_after, validators/debug |
changes | Changes list | Some processing nodes + OutputNode | AnimationViewerNode (optional), reports/debug |
atlas_project | Atlas Project | InputNode / atlas viewer | AtlasUnpackerNode.atlas_project, OutputNode.atlas_project, atlas filters |
atlas_in, atlas_out | Atlas Project (or atlas-related stream) | Atlas nodes / filters | Atlas nodes, AtlasViewerNode, AtlasMergerNode (via its multi-input) |
sprites_out, sprites_in, sprites_data_in | Sprites | AtlasUnpackerNode, filters | AssetViewerNode.sprites_in, AtlasRepackerNode.sprites_data_in |
atlas_inputs | Multiple Atlas Projects | Multiple sources | AtlasMergerNode.atlas_inputs (connect several atlases) |
Practical pipelines
- Basic JSON optimization:
InputNode→ (optional:DiagnosticNode/ filters) → optimizers (RDPNode,SplineNode,QuantizerNode, …) →OutputNode. - Atlas repacking:
InputNode.atlas_project→AtlasUnpackerNode→ (optional:AssetViewerNode) →AtlasRepackerNode→OutputNode.atlas_project/atlas_assets.
