Author a Skinned Character Test Case
Scaffold a new asset-generation test case that
asks a model to sculpt an organic character — one continuous skin bound to a
model-invented skeleton, deforming smoothly across its joints — with a skinning binary
(mc-skin, sn-skin, or dc-skin) to match a written brief. The asset_kind — one of
mc-skinned (low-poly), sn-skinned (smooth mid-fidelity), or dc-skinned (sharp-edged,
armored) — is picked by the character’s surface. This is the short version;
Authoring a Skinned Character Test Case
covers it in full, and
Manifests is the authoritative
schema.
A rigid machine that articulates about pivots (a tank, a mech) is a sibling mesh-animation or voxel-animation case instead. There is no static skinned kind — a character that never deforms is a static mesh-model case.
Layout
Section titled “Layout”A version lives at test-cases/<type>/<difficulty>/<slug>/<version>/ and is immutable once runs
reference it — revise by adding a new version, not by editing a published one.
test-cases/<type>/<difficulty>/<slug>/<version>/ test-case.toml # manifest: type, asset_kind, voxel, tool, output, model, the overall domain variants/ # one standalone TOML file per variant (listed in `variants`) prompt.hbs # rendered into the harness instruction (NOT seeded) specs/brief.md # the character + how the tool behaves — SEEDEDA run receives only the seeded brief, the binary on PATH (its --help is the ops
contract), a seeded mc-skin.config.json, and a rig.json pre-populated with the
required animations alone. There is no target mesh and no operations schema.
- Pick a catalog slug and the character to sculpt — a body whose motion is
continuous skin deformation, achievable with the CSG primitives. Worked examples:
siege-husk(mc-skinned),caldera-slag(sn-skinned),sunfront-trooper(dc-skinned). - Write
specs/brief.md: the character, silhouette, orientation (+z forward, y up), the exact opaque#rrggbbpalette (no alpha), the required animations and how each reads as continuous-skin deformation, that the skeleton is the model’s to invent, and thatrenderemits the geometry. Keep it self-contained. - Write
prompt.hbsusing only the documented template variables ({{variant.*}},{{#each specs}}) — it renders in strict mode — pointing the model at the binary’s--helpand stating the hard requirements (sculpt/rig only through the tool; author every animation;renderbefore returning). - Write
test-case.toml: metadata (name,difficulty,tags),type = "asset-generation",asset_kind("mc-skinned"/"sn-skinned"/"dc-skinned"), avariantslist, the[voxel]field bounds (width,heightup,depth,background= the preview clear color only), and[tool](binary,preview) +[output](actions) — both single files with NO{part}token (the one animated kind that does not template by part). - Under
[model], declare only[[model.animation]]entries by identity alone — a uniquename, aloopflag (defaulttrue), andauto_play(defaultfalse;true= a continuous breathing idle). Declare no bones, joints, weights, period, or keyframes; the model invents the skeleton and authors F-curves at run time. The skinnedmesh.glb+rig.jsonare core-emitted automatically — never named here. There is no[[reference]], no[build], and no[[check]].
Validate
Section titled “Validate”tcab prompt --test-case <slug> --version <version> --variant <variant>tcab seed --test-case <slug> --version <version> --variant <variant>For every variant, render the prompt (catching strict-mode template errors, a stray
{part} token, or a missing required table) and inspect the seeded repository (brief +
mc-skin.config.json + the rig.json) to confirm it is self-contained.
Next steps
Section titled “Next steps”- Run a Test Case to exercise it end to end.
- Review a Run to score how convincingly the skin deforms across joints.