Play the animations in a GLB or glTF file, show its skeleton, and check the skin weights bone by bone. It runs in your browser, so nothing is uploaded.
No file at hand?
Drop the file on the box above and the first animation clip starts playing. Pick another clip from the bar at the bottom of the viewer or from the list in the side panel, drag the timeline to scrub frame by frame, or slow it down to 0.25× to see what the feet are doing. Pick "Rest pose" to stop the clip and see the model in its bind pose.
Drag to orbit, scroll to zoom, right-drag to pan. Drop another file onto the viewer to swap the model without reloading the page.
The Skeleton toggle draws every bone as a line from parent to child, with a dot on each joint, so fingers, jaws and other end bones stay visible too. The side panel lists the whole hierarchy with each bone's name and how many vertices it moves. Bones that move nothing are greyed out: usually end bones, IK targets or helpers you can delete before export.
Click anywhere on the model and the viewer selects the bone that moves that spot the most, which is the quickest way to find out which of "bone_23" and "bone_24" is the left forearm.
Turn on Skin weights and each bone gets its own color, blended where vertices share bones, so you see where one bone's area ends and the next begins. Select a bone and the view switches to a heat map with the same blue-to-red ramp as Blender's weight paint: red moves fully with the bone, green about half, blue not at all.
The problems that show up most: a thigh bone that also pulls the other leg, a hand whose weights stop dead at the wrist, a shoulder with a hard edge where it should fade, and stray vertices on the chest weighted to an arm. Bend test swings each bone 45° in turn and then sways the whole rig, so bad weights show up as tearing or collapsing even on a model without animation.
GLB is the binary form of glTF, the format three.js, Babylon.js, Godot and model-viewer load natively. The skin, the skeleton and every animation clip live in that one file, so what plays here is what your engine gets. A .gltf that points to separate .bin and texture files won't load on its own; pack it into a GLB first.
The viewer reads the first set of four bone weights per vertex (JOINTS_0 and WEIGHTS_0), the same set three.js and most web engines use. A second set for eight-bone skinning is ignored.
GrandpaCAD turns a text prompt into a ready-to-print 3D model. Functional parts, organic shapes, multi-color prints. No CAD skills needed.
"Phone stand with cable slot, 70mm wide, 15 degree angle"
