Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Your first report

A finding tells you which clip, bone and frame are wrong. The HTML report shows you: it plays back the exact pose-grid frames the checks judged, with foot and root trails, metric charts, and a findings list that scrubs the viewer to the judged frame when you click it. One file, no server, no dependencies; attach it to a pull request or send it to whoever owns the fix.

The commands below run from a checkout of the repository; the clips are the same synthetic samples used in first lint.

Render the report

$ animsmith --config examples/walk.animsmith.toml report examples/assets/walk-dirty.glb -o report.html
wrote report.html (1 clip(s), 3 finding(s), 0.1 MB)   # exits 0

Open report.html in a browser. This is the same report, embedded here and scrubbed to the first finding:

Open it full size. Drag to orbit, use the wheel to zoom, and click a finding to jump to its frame. When the file holds more than one clip, the with control plays a second one beside the first at the same normalized phase, with both source times labelled — a presentation mapping between two timelines, not a retime. With a pair selected, enable illustrative blend for an optional third pane and a continuous weight slider. This engine-agnostic presentation interpolates sampled local transforms and runs forward kinematics; it adds no measured finding or runtime evidence. See the blend contract. The source charts share a playhead with the 3D view, and each chart caption says what to look for in it — derived from what your configuration declares for that clip and what the checks judged, not from an assumption about what the clip is. A clip declared loop = true is told its curves should end where they began; one that pins speed_mps with animation-owned travel is told the root should keep travelling at that speed, with no claim about the shape it travels; a clip that declares neither is told so, and named the checks that judged it. A root path is also marked where the track starts (a hollow circle) and where it ends (a filled square), and the caption states how far apart the two are. A configuration that declares a [gait_groups.<name>] blend ring adds one further figure per group, drawing every member's left-minus-right foot height on one shared stride-phase axis with the declared tolerance as a band; that figure stays on screen whichever member you select, because comparing them is what it is for.

Compare before and after

When a clip has been repaired or re-exported, render both versions into one comparison report. The pair below is a synthetic gait with a seam and a sliding foot on the left, and the corrected clip on the right:

$ animsmith --config examples/report-comparison.animsmith.toml report \
    examples/assets/report-comparison-before.glb \
    --compare-after examples/assets/report-comparison-after.glb \
    --before-clip acceptance-matrix --after-clip acceptance-matrix \
    -o comparison.html
wrote comparison.html (1 clip(s), 5 finding(s), 0.1 MB)   # exits 0

Open the comparison. Press play beside the shared phase to run both sides together, or scrub it by hand. Tick Overlay after on before beside it to draw the two skeletons in one pane — the before solid, the after dashed over it — at those same frames. The judged poses come first, then the shared root trajectory — fitted to its own panel, with a scale bar in the corner and the magnification against the role-trajectory panels in its caption, so a two-centimetre sway is legible and still reads as two centimetres — and then each side's trails and gait. The gait panel shades the sampled stance intervals, and every panel's caption says what to look for in it.

Share evidence without sharing the asset

The report embeds the sampled pose grid, which is the motion itself. When the clip is licensed or confidential, render an evidence-only report: findings, coverage gaps, engine predictions and charts stay, the poses are omitted, and the file is safe to attach to a vendor ticket.

$ animsmith --config examples/walk.animsmith.toml report examples/assets/walk-dirty.glb -o evidence.html --evidence-only
wrote evidence.html (1 clip(s), 3 finding(s), 0.1 MB)   # exits 0

Where next