64 AI-generated models. Every result published.
64 GLBs — 8 open generator families × 8 shared commerce prompts, so every family was handed the same job. Each one scored for Apple-AR readiness, run through one spatialpack autocorrect pass, then re-scored with the same gate. The per-asset table below is the whole corpus — nothing sampled, nothing dropped.
This is the corpus behind the “64/64” and “25/25” figures on the homepage and on Catalog Rescue. It is not the size leaderboard: that one runs the Khronos sample corpus against gltf-transform and gltfpack and lives at /benchmark. Different corpus, different question.
- corpus assets
- 64
- AR-ready after autocorrect
- 64/64
- failing ones rescued
- 25/25
- corpus bytes
- -81%
Run 2026-06-11 · CLI 0.1.0 (git 89ce61f) · target apple-ar · preset web-mobile (autocorrect default) · 124.0 MB → 23.5 MB · 0 of 64 outputs grew.
Before and after.
| Population | Assets | Ready | Warnings | Not ready |
|---|---|---|---|---|
| AI-generated, before autocorrect | 64 | 39 (60.9%) | 25 | 0 |
| AI-generated, after autocorrect | 64 | 64 (100.0%) | 0 | 0 |
| Khronos sample corpus, same gate (2026-06-10) | 103 | 38 (36.9%) | 34 | 31 |
The honest read: AI generators emit structurally simple PBR, so they clear a gate 31 of 103 human-authored Khronos showcase assets fail. Zero of the 64 AI models were not-ready before repair — there is no “broken AI slop rescued” story here. What the run shows is automatic warning cleanup plus a large, visually-lossless size cut.
What actually failed.
| Issue | Severity | Assets | Remaining after |
|---|---|---|---|
conformance:geometry.uv_island_spacing | warning | 25 | 0 |
No lossy material extensions (transmission, volume, clearcoat, iridescence) appear anywhere in this corpus — which is why nothing here was blocked outright, only warned on.
Per generator family.
| Family | Generator | Before R/W/NR | After ready | Rescued | Median size Δ | Family bytes |
|---|---|---|---|---|---|---|
TRELLIS | TRELLIS (Microsoft) | 0/8/0 | 8/8 | 8/8 | −89.9% | 13.8 MB → 1.6 MB (-88.4%) |
Hunyuan3D-2 | Hunyuan3D-2 (Tencent) | 0/8/0 | 8/8 | 8/8 | −85.8% | 16.5 MB → 2.4 MB (-85.7%) |
3DTopia-XL | 3DTopia-XL (NTU S-Lab) | 0/8/0 | 8/8 | 8/8 | −85.3% | 23.5 MB → 3.5 MB (-85.2%) |
Real3D | Real3D (UT Austin) | 8/0/0 | 8/8 | n/a | −79.4% | 30.4 MB → 6.2 MB (-79.6%) |
TripoSR | TripoSR (Stability AI / Tripo) | 8/0/0 | 8/8 | n/a | −78.4% | 9.4 MB → 2.0 MB (-78.8%) |
InstantMesh | InstantMesh (TencentARC) | 8/0/0 | 8/8 | n/a | −77.3% | 13.2 MB → 3.0 MB (-77.4%) |
SF3D | Stable Fast 3D (Stability AI) | 7/1/0 | 8/8 | 1/1 | −72.1% | 7.2 MB → 2.0 MB (-72.5%) |
SPAR3D | SPAR3D / Stable Point Aware 3D (Stability AI) | 8/0/0 | 8/8 | n/a | −71.6% | 10.0 MB → 2.9 MB (-71%) |
R/W/NR = ready / warnings / not-ready before autocorrect. “Rescued” is n/a for families that had nothing to rescue. Median size Δ is the median per-asset output-vs-input byte change.
Every asset.
| Asset | Tris | Before | After | In | Out | Δ bytes |
|---|---|---|---|---|---|---|
TRELLIS/a_hammer | 2,798 | warnings | ready | 1146 kB | 49 kB | −95.8% |
TRELLIS/chair | 9,122 | warnings | ready | 1412 kB | 91 kB | −93.5% |
TRELLIS/an_avocado | 20,622 | warnings | ready | 1431 kB | 149 kB | −89.6% |
TRELLIS/a_coffee_table | 15,248 | warnings | ready | 1556 kB | 131 kB | −91.6% |
TRELLIS/a_coffee_maker | 70,575 | warnings | ready | 2646 kB | 446 kB | −83.1% |
TRELLIS/a_black_baseball_hat | 23,944 | warnings | ready | 1456 kB | 142 kB | −90.2% |
TRELLIS/black_hi-top_sneakers | 34,577 | warnings | ready | 1880 kB | 255 kB | −86.5% |
TRELLIS/an_antique_chest_with_three_drawers | 41,844 | warnings | ready | 2238 kB | 340 kB | −84.8% |
Hunyuan3D-2/a_hammer | 40,000 | warnings | ready | 1993 kB | 260 kB | −87% |
Hunyuan3D-2/chair | 40,000 | warnings | ready | 2095 kB | 296 kB | −85.9% |
Hunyuan3D-2/an_avocado | 40,000 | warnings | ready | 1960 kB | 266 kB | −86.4% |
Hunyuan3D-2/a_coffee_table | 40,000 | warnings | ready | 2107 kB | 289 kB | −86.3% |
Hunyuan3D-2/a_coffee_maker | 40,000 | warnings | ready | 1906 kB | 289 kB | −84.8% |
Hunyuan3D-2/a_black_baseball_hat | 40,000 | warnings | ready | 1930 kB | 291 kB | −84.9% |
Hunyuan3D-2/black_hi-top_sneakers | 40,000 | warnings | ready | 2256 kB | 351 kB | −84.5% |
Hunyuan3D-2/an_antique_chest_with_three_drawers | 40,000 | warnings | ready | 2256 kB | 323 kB | −85.7% |
TripoSR/a_hammer | 26,939 | ready | ready | 540 kB | 120 kB | −77.7% |
TripoSR/chair | 28,134 | ready | ready | 564 kB | 122 kB | −78.4% |
TripoSR/an_avocado | 49,979 | ready | ready | 1001 kB | 229 kB | −77.1% |
TripoSR/a_coffee_table | 42,123 | ready | ready | 844 kB | 180 kB | −78.7% |
TripoSR/a_coffee_maker | 75,895 | ready | ready | 1520 kB | 295 kB | −80.6% |
TripoSR/a_black_baseball_hat | 70,360 | ready | ready | 1409 kB | 281 kB | −80% |
TripoSR/black_hi-top_sneakers | 72,631 | ready | ready | 1455 kB | 316 kB | −78.3% |
TripoSR/an_antique_chest_with_three_drawers | 101,163 | ready | ready | 2026 kB | 442 kB | −78.2% |
InstantMesh/a_hammer | 25,320 | ready | ready | 508 kB | 123 kB | −75.8% |
InstantMesh/chair | 45,836 | ready | ready | 918 kB | 207 kB | −77.4% |
InstantMesh/an_avocado | 64,044 | ready | ready | 1283 kB | 299 kB | −76.7% |
InstantMesh/a_coffee_table | 73,556 | ready | ready | 1472 kB | 326 kB | −77.8% |
InstantMesh/a_coffee_maker | 111,852 | ready | ready | 2238 kB | 496 kB | −77.8% |
InstantMesh/a_black_baseball_hat | 91,360 | ready | ready | 1829 kB | 389 kB | −78.7% |
InstantMesh/black_hi-top_sneakers | 122,176 | ready | ready | 2445 kB | 556 kB | −77.2% |
InstantMesh/an_antique_chest_with_three_drawers | 126,844 | ready | ready | 2539 kB | 590 kB | −76.8% |
SF3D/a_hammer | 11,208 | ready | ready | 493 kB | 155 kB | −68.7% |
SF3D/chair | 14,488 | ready | ready | 679 kB | 216 kB | −68.2% |
SF3D/an_avocado | 16,760 | ready | ready | 658 kB | 191 kB | −71% |
SF3D/a_coffee_table | 26,300 | ready | ready | 975 kB | 259 kB | −73.4% |
SF3D/a_coffee_maker | 26,572 | warnings | ready | 920 kB | 231 kB | −74.8% |
SF3D/a_black_baseball_hat | 33,340 | ready | ready | 1135 kB | 276 kB | −75.6% |
SF3D/black_hi-top_sneakers | 28,828 | ready | ready | 1090 kB | 304 kB | −72.1% |
SF3D/an_antique_chest_with_three_drawers | 35,464 | ready | ready | 1292 kB | 360 kB | −72.1% |
SPAR3D/a_hammer | 12,096 | ready | ready | 568 kB | 188 kB | −66.9% |
SPAR3D/chair | 16,276 | ready | ready | 765 kB | 252 kB | −67.1% |
SPAR3D/an_avocado | 18,376 | ready | ready | 814 kB | 273 kB | −66.5% |
SPAR3D/a_coffee_table | 32,632 | ready | ready | 1262 kB | 359 kB | −71.5% |
SPAR3D/a_coffee_maker | 30,984 | ready | ready | 1204 kB | 342 kB | −71.6% |
SPAR3D/a_black_baseball_hat | 49,232 | ready | ready | 1814 kB | 477 kB | −73.7% |
SPAR3D/black_hi-top_sneakers | 39,372 | ready | ready | 1491 kB | 423 kB | −71.7% |
SPAR3D/an_antique_chest_with_three_drawers | 55,712 | ready | ready | 2090 kB | 594 kB | −71.6% |
Real3D/a_hammer | 74,553 | ready | ready | 1493 kB | 321 kB | −78.5% |
Real3D/chair | 97,211 | ready | ready | 1946 kB | 398 kB | −79.5% |
Real3D/an_avocado | 137,025 | ready | ready | 2743 kB | 584 kB | −78.7% |
Real3D/a_coffee_table | 197,524 | ready | ready | 3954 kB | 781 kB | −80.3% |
Real3D/a_coffee_maker | 209,170 | ready | ready | 4187 kB | 849 kB | −79.7% |
Real3D/a_black_baseball_hat | 245,723 | ready | ready | 4918 kB | 936 kB | −81% |
Real3D/black_hi-top_sneakers | 275,167 | ready | ready | 5509 kB | 1167 kB | −78.8% |
Real3D/an_antique_chest_with_three_drawers | 284,422 | ready | ready | 5694 kB | 1182 kB | −79.2% |
3DTopia-XL/a_hammer | 22,054 | warnings | ready | 1905 kB | 211 kB | −88.9% |
3DTopia-XL/chair | 26,368 | warnings | ready | 1994 kB | 262 kB | −86.8% |
3DTopia-XL/an_avocado | 34,594 | warnings | ready | 2100 kB | 307 kB | −85.4% |
3DTopia-XL/a_coffee_table | 44,884 | warnings | ready | 2880 kB | 391 kB | −86.4% |
3DTopia-XL/a_coffee_maker | 60,388 | warnings | ready | 2832 kB | 446 kB | −84.2% |
3DTopia-XL/a_black_baseball_hat | 72,550 | warnings | ready | 3740 kB | 585 kB | −84.4% |
3DTopia-XL/black_hi-top_sneakers | 100,000 | warnings | ready | 4609 kB | 769 kB | −83.3% |
3DTopia-XL/an_antique_chest_with_three_drawers | 65,054 | warnings | ready | 3404 kB | 502 kB | −85.2% |
Δ bytes is output vs input for the whole GLB. 0 assets grew; 0 size-guard trips (the guard ships the original bytes when a repair would grow a file without improving the verdict).
Methodology, precisely.
64 GLBs ingested 2026-06-10 from the 3d-arena/3d-arena Hugging Face dataset (MIT license, 3D Arena (maintainer: Dylan Ebert)). Same input prompt/image set across all generator families (paired design). Inputs sourced from dylanebert/iso3d. Every asset carries source URL, dataset license, generator repo and weights license in the corpus manifest. Commercial generators (Meshy, Tripo API, Rodin, Luma) were excluded because their redistribution rights could not be verified.
prompts: a black baseball hat · a coffee maker · a coffee table · a hammer · an antique chest with three drawers · an avocado · black hi-top sneakers · chair
- TRELLIS — TRELLIS (Microsoft); weights MIT
- Hunyuan3D-2 — Hunyuan3D-2 (Tencent); weights Tencent Hunyuan Community License
- 3DTopia-XL — 3DTopia-XL (NTU S-Lab); weights S-Lab License 1.0
- Real3D — Real3D (UT Austin); weights MIT
- TripoSR — TripoSR (Stability AI / Tripo); weights MIT
- InstantMesh — InstantMesh (TencentARC); weights Apache-2.0
- SF3D — Stable Fast 3D (Stability AI); weights Stability Community License
- SPAR3D — SPAR3D / Stable Point Aware 3D (Stability AI); weights Stability Community License
spatialpack readiness --target apple-ar before, then spatialpack autocorrect (preset web-mobile (autocorrect default)), which re-scores the repaired GLB. Same scorecard both times — conformance checks plus AR-parity self-consistency.
4 repaired GLBs (TRELLIS/a_coffee_maker, Hunyuan3D-2/chair, TripoSR/chair, 3DTopia-XL/a_black_baseball_hat) were re-parsed and rendered before-vs-after across 6 camera views each — 24 views total — with the SpatialPack visual-diff harness (model-viewer + headless Chromium). Worst case across all 24 views: SSIM 0.9886, mean ΔE94 0.63, MAE 0.0026. No visible change from the repair.
- — Commercial generators (Meshy, Tripo API, Rodin, Luma). Excluded for license verifiability, not because they did worse.
- — Apple AR Quick Look ground truth. “Ready” is our scorecard (conformance + AR-parity self-consistency), not a RealityKit render on a device.
- — Generality beyond 8 prompts and one arena snapshot per family.
- — A rescue-from-broken story. Zero assets were not-ready before repair; the 25/25 figure is warnings cleared, not blockers fixed.
The first run of this corpus (2026-06-10, pre-fix toolchain) produced the same readiness verdicts but only −29.8% corpus bytes, because autocorrect ran a normal-generation pass that un-welded meshes and inflated the three vertex-colour families by 13–21%. That was a real regression, it was filed against ourselves, and the fix (drop the pass; add a keep-smaller-of size guard) is what the numbers above measure.
The free check runs the same readiness gate used on all 64 assets above — no account, no card.