Methodology

How we test

We care about one question: if you send this file to a printer, what happens? We do not score looks. A beautiful model with a hole in it fails here.

The monthly run (first full run coming soon)

What happens to each file

  1. Load it and drop textures, since slicers ignore them.
  2. Weld vertices that sit at the same spot. AI exports often split them along texture seams.
  3. Turn it Z-up and scale it so the longest side is 100 mm. All numbers are at that size.
  4. Run nine checks and add up the points.

The rubric

Out of 100. Version 0.2.

CheckPointsFull points whenPartial points
Watertight and manifold25Every edge is shared by exactly two faces20 at 0.01% bad edges or less, 15 at 0.1%, 8 at 1%, else 0
Normals5Faces wound the same way, pointing out3 if inside out, 0 if mixed
Single body15Nothing floats free of the main body10 if floating bits are 1% of the surface or less, 5 at 10%, else 0
Self-intersections10No faces cut through other faces8 at 0.1% of faces, 5 at 1%, 2 at 5%, else 0
Wall thickness152% or fewer sampled spots under 0.8 mm12 at 5%, 8 at 15%, 4 at 35%, else 0
Flat base10Stands as delivered on a real flat contact7 if tilted 15 degrees or less, 4 if it needs a bigger turn, 2 if no flat pose
Overhangs105% or less of the surface is steeper than 45 degrees8 at 10%, 5 at 20%, 3 at 30%, else 1
Triangle count510k to 1M triangles3 for 2k to 3M, else 1
Scale sanity5Native size 10 to 500 units3 if it needs rescaling, 0 if one side is nearly zero

Hard caps

Some single problems make a model unprintable even if everything else is clean. A flat card is capped at 30. A hollow skin (more than half the walls under 0.8 mm) is capped at 45. More than 1% open or non-manifold edges is capped at 45.

Verdicts

85+ Prints as is   65 to 84 Prints with minor fixes   under 65 Needs repair first (under 40 is major work)

How the checks work

Limits

The 0.8 mm line assumes an FDM printer with a 0.4 mm nozzle. Resin can go thinner. Thickness is sampled, but the seed is fixed, so the same file always gets the same score. We plan to publish the scoring code so anyone can check our work.