Hi everyone — I'm very proud to share the progress I’ve made on a project I’ve been developing for quite some time.
Video demonstration:
https://odysee.com/@DigitalArtFreedom:6/EP-0001_Blender-Spine-IO_pre-release:2?r=5uzb4Nk5x5zfozjYh3NkgAWtx5PDSyg3
Blender-Spine-IO — Release v0.0.1 (Alpha)
Open-source Spine 4.3 JSON exporter for Blender (OCA/OCO-friendly)
Author: Simon Heggie • Blender 4.2+ • Spine 4.3.39-beta • License: GPL-3.0
This project provides a direct Blender → Spine pipeline, supporting meshes, bones, weights, FK animation, blend modes, correct internal edges, OCA/OCO texture routing, and more. Import features are planned for later versions.
DOWNLOAD:
SimonHeggie/Blender-Spine-IOreleases/download/v0.0.1_pre-release/blender_spine_io_v0.0.1_pre-release.zip
Installation
Extensions (recommended):
Blender → Edit → Preferences → Extensions → Install ZIP → Enable Blender-Spine-IO
Legacy Add-on:
Preferences → Add-ons → Install… → Enable Spine-IO
Where It Appears
- File → Export → Spine (.json) — full export dialog
- 3D Viewport → Sidebar → Spine-IO tab
- Quick Export (stores last path)
- Texture export toggle
- Blend-Mode Manager
Features (Working as of v0.0.1)
✔ Mesh Export
- Tris/quads/ngons
- Internal edges (Spine-compatible)
- Correct hull detection
- Works on weighted/unweighted meshes
✔ Armature & Bones
- Full hierarchy
- Correct local transforms
- Bone lengths
- Auto-scale or constant-scale
✔ Weights
- Up to 4 influences
- Fallback bones
- Correct Spine-space export
✔ Animation (FK)
- Exports the active Action
- Spine-compatible timelines
✔ Materials → Spine Blend-Modes
- Procedural BLEND-MODE node
- Normal / Additive / Multiply / Screen
✔ Tools / UI
- One-click Quick Export
- Blend-mode sync
- Simple material browser
✔ OCA/OCO Pathing
- Removes *.OCA wrappers
- Normalizes nested folders
- Predictable texture mapping
✔ Parenting Fix
Unparented weighted meshes auto-bind correctly.
Known Issues
- Occasional UI slowdown (material scanning)
- Root bone requires 90° workaround — full transform fix planned
- FK-only animation (IK/constraints planned)
- Unweighted meshes appear at origin
Roadmap
🔥 High Priority
- Correct world→Spine transform
- Controller bones
- Drivers (e.g., alpha)
- IK & constraints
🔥 Medium
- Multi-Action export
- Skins + slot colours
- 2-colour tint
- PSD/Krita layer-name → slot mapping
🔥 Low
- Full Spine → Blender importer
- Unified UI for multi-rig workflows
Source & Extension Review
Currently awaiting review on the Blender Extensions site:
https://extensions.blender.org/approval-queue/blender-spine-io/
Acknowledgements & Notes on Credit
I want to thank the Spine team for answering licensing questions and providing helpful pointers.
For transparency: the only external implementation I directly studied for weighted mesh handling — specifically internal edges and hull encoding — was maximsokal’s work. Everything else (rig-space transforms, animation export, materials, OCA/OCO routing, UI, utility architecture, etc.) is original work I’ve designed and written for this project - based on my interpretation of Esoteric's .JSON documentation.
Since this topic came up on the forum early in my development, I wanted to share this release now so there is a clear public record of the features, solutions, and implementation I’ve built so far.
As this project is GPL-3.0, you are free to build upon it — all I ask is that derivative work provides appropriate credit, which is standard practice and important for creative and technical careers.
Collaboration
My aim is to build a reputation as someone who is indispensable at providing smart solutions.
But I'm open to where my work can build a part of a bigger solution.
I’m absolutely open to collaborating. If the Spine team or community developers wish to work together, I’m happy to coordinate so we don’t duplicate effort or reinvent the wheel in parallel. If not, I’m committed to continuing development on my version.
Thanks for taking the time to look, and I hope this exporter becomes a valuable tool for the community.
– Simon