Skip to main content

armature

You block the shot. The model shoots it.

A video model can produce motion, light and life that no renderer can. It cannot be told who is on screen and where they are standing. armature supplies exactly that: a canonical character mesh is staged and animated in headless Blender, and the render becomes a per-frame control sequence the video model must obey — so AI-generated video can carry one persistent main character whose position and pose are known every frame.

armature is image-to-video with a GLB instead of an image. Everything spatial is authored, and the model paints life over it. The deliverable is footage — film, cutscenes, character poses and movement, any shot at all. A game is one consumer of that footage, never the boundary of the tool.

Install

pip install armature-studio
armature check

What this package is

The installable package is armature_core — the measured pieces of the pipeline, every one of which imports under a plain CPython:

  • Gates that raise. gates, route_gates, rig_gates, donor_gate — predicates that refuse a bad step inside the tool performing it, rather than warning beside it.
  • Framing and turnaround. framing, turnaround, startframe — perspective and orthographic camera solves, shared-scale shot-sets, silhouette extent, and the frame-clearance checks that refuse a cropped subject.
  • Control channels. channels, openpose, aapose, landmarks, lift_solve — channel maths and pose conventions for driving a video model.
  • Rig and mesh. joints, binding, parts, posearc, walk, glb.
  • Contracts and records. shotspec, subject, sitelist, assembly, clipstats, clipcompare, pngio, errors.
from armature_core import turnaround, framing

plan = turnaround.projection_plan(ortho=True, ortho_scale=1.1235359256161628)

What this package is not

The rendering scripts are not console entry points, deliberately. render_turnaround.py, stage_render.py and their siblings run inside Blender's own interpreter:

blender -b -P tools/render_turnaround.py -- --glb subject.glb --out renders --ortho

A console script installed on your Python could not import bpy and would fail on its first line, so shipping one would be a promise the package cannot keep. Those scripts live in the repository, where the invocation that works is the one written down.

armature_core.blender_scene is the single module that imports bpy. It is packaged, and it resolves only under Blender — armature check reports it as needs-blender rather than as a defect.

The discipline this comes from

armature is an experiment repository whose product is its record: a spec before the work, a report after, a ruling last, and the Director's eye as the verdict of record. Metrics are diagnostics and gate nothing on their own. Every generation records its model, payload, seed and control hashes, because a recipe that does not reproduce its output is not a recipe. No non-commercially-licensed model, weight or dependency enters the pipeline — anywhere, including experiments.

Requirements

Python 3.10+ and numpy. Blender 5.x is required only for the rendering scripts in the repository, not for this package.

License

MIT.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

armature_studio-0.3.0.tar.gz (379.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

armature_studio-0.3.0-py3-none-any.whl (179.9 kB view details)

Uploaded Python 3

File details

Details for the file armature_studio-0.3.0.tar.gz.

File metadata

  • Download URL: armature_studio-0.3.0.tar.gz
  • Upload date:
  • Size: 379.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for armature_studio-0.3.0.tar.gz
Algorithm Hash digest
SHA256 587b9a776db157edea22dd9b7ef9c1e197d1769850d15c0c8e5e74a069304fca
MD5 5ba03ed658a05346ee9f8afcf898fe8e
BLAKE2b-256 e0f532d60a151f55d2af3bc74910f2a3617e0b440808914a6c0141c65d1044dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for armature_studio-0.3.0.tar.gz:

Publisher: release.yml on mcp-tool-shop-org/armature

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file armature_studio-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: armature_studio-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 179.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for armature_studio-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8ec0aaa715cf808a40460184730d0b28e90e1ac91839cbd036992f9ba741ffc3
MD5 f58486020e5325106bef512a6bab1b62
BLAKE2b-256 23960124b74443b53ec607d02614741e3033a5e7d59013e0bf733831cdc4fe90

See more details on using hashes here.

Provenance

The following attestation bundles were made for armature_studio-0.3.0-py3-none-any.whl:

Publisher: release.yml on mcp-tool-shop-org/armature

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 files

0.2.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page