Compare N assets
Run visual-diff for every pair across 2–8 GLBs — batch QA, recipe-sweep analysis, version-comparing a release. Right now the pairs run on your machine and in your CI, not on ours; assembling them into the N×N matrix is the part we would have done.
We are not running visual batch comparison on our servers right now, so we are not going to offer you a button for it. The visual-diff gate itself is not affected — it runs on your machine and on your CI runner, which is where it belongs for anything you would actually gate a release on.
# one-time: the browser this npx CLI renders with
npx -p @spatialpack/cli playwright install chromium
for a in *.glb; do
for b in *.glb; do
[[ "$a" < "$b" ]] || continue
npx @spatialpack/cli visual-diff "$a" "$b" \
--grid orbit-8 --out "diff/${a%.glb}__${b%.glb}"
done
doneOne visual-diff per pair, upper-triangle so no pair runs twice — 3 runs for 3 files, 28 for 8. Each writes its own visual-diff.json with SSIM + ΔE94 across the orbit-8 grid — the same grid the published benchmark uses. Those are the cells of the matrix; no CLI command draws the grid itself, and assembling the cells into that view is the part we would have done for you.
Pass --grid explicitly: it defaults to a 6-angle mixed-pitch grid, which scores differently. The published leaderboard scored one view of orbit-8 (--views 1); the default here is the stricter worst-of-8. The first line is once per machine — npx gives the CLI its own Playwright, and its browser is not the one any other install has. Free and unmetered.
- uses: ./actions/spatialpack-action
with:
visual-diff: trueThe GitHub Action runs the diff on your own runner and fails the build past your ΔE94 threshold. Also free.
Want the comparison run for you instead? Catalog Rescue returns a before/after report per model →
QA a sweep of optimizer presets in one shot. The matrix tells you at a glance which presets diverge from the baseline.
Compare every release of a single asset to spot drift over time. Diagonal = self (SSIM 1.0); off-diagonal cells show pairwise SSIM.
Any cell opens the per-orbit detail panel (8-camera SSIM + ΔE94 + side-by-side render) for that pair — the same view the single-pair Compare uses.