3D · 13 tools · nothing uploads

Inspect a glTF/GLB model

Run the Khronos glTF-validator over a glTF or GLB file and report every error, warning, info and hint it finds, alongside a resource summary (draw calls, vertex/triangle counts, materials, textures, animations). A model in another format is converted to GLB first, so the report describes that conversion's output rather than the original file's own bytes. Nothing is uploaded.

Input

Inspect a glTF/GLB model runs the Khronos validator and reports errors, warnings, infos and hints, plus totals for draw calls, vertices, triangles, materials, textures and animations. A source in OBJ, STL, FBX or any other shape gets turned into GLB before validation, so the report reflects that converted file, not your original bytes. Only the first 20 messages print.

Questions

What does it check?

The Khronos gltf-validator runs over the file and the report counts errors, warnings, infos and hints, alongside a resource summary: draw calls, vertex and triangle counts, materials, whether textures are present, animation count, and whether skins or morph targets are used.

What happens if I drop an OBJ or STL instead of a glTF or GLB?

It gets converted to GLB first through the shared three.js loader, and the report is built from that converted file rather than from the original bytes, with a line saying so. Formats it can convert this way include OBJ, STL, PLY, FBX, 3MF, DAE and XYZ.

Why does it say the report describes a converted file, not my original bytes?

Because gltf-validator only understands glTF and GLB, so anything else has to be turned into GLB first before validation can run. Whatever the validator flags is a property of that conversion, which can not be exactly the same as a problem in your original file.

How many individual issues get listed?

Up to 20. Past that the report adds a line saying how many more there are without listing each one, so a file with hundreds of small warnings still produces a readable report rather than a wall of text.

Does it run on the command line?

Yes. It takes a single file and has no browser-only restriction, so the CLI and MCP surfaces run the same validator and loader code as the page.

Compare

ToolRuns on the CLILive as you type
Inspect a glTF/GLB modelYesNo
Convert 3D modelYesNo
3D model mesh infoYesNo
Measure a 3D modelYesNo
Strip 3D model metadataYesNo
Optimize a 3D modelYesNo
Convert STL between ASCII and binaryYesNo

Related 3D tools

1→1Convert 3D modelTurn an OBJ, STL, PLY, GLB, glTF, FBX, DAE, 3MF, 3DS or 40-odd other 3D formats into GLB, glTF, OBJ, STL, PLY or USDZ. Textures round-trip through glTF/GLB; OBJ, STL, PLY and USDZ output geometry only.Takes one file1→13D model mesh infoRead vertex/face/material counts and the bounding box out of an OBJ, STL, FBX, DAE or 40-odd other 3D formats, via assimp's import side, the wide side of the engine model-convert also uses.Takes one file1→1Measure a 3D modelRead the bounding box, volume, surface area and triangle count out of a 3D model, per mesh and as a whole. Volume assumes consistent outward-facing triangle winding.Takes one file1→1Strip 3D model metadataRemove authoring metadata (generator string, copyright, node/mesh names, and any glTF "extras" fields) from a 3D model before sharing it. Converts through assimp's import side to glTF/GLB first, so the input can be any of the 40-odd formats assimp reads, then edits the resulting scene JSON directly.Takes one file1→1Optimize a 3D modelShrink a 3D model: weld coincident vertices within a tolerance, simplify the mesh toward a target triangle fraction, and quantize vertex positions onto a coarser grid. No Draco compression, since three ships Draco's decoder but not its encoder, and the encoder three's own exporter points at is a CDN this project never fetches anything from.Takes one file1→1Convert STL between ASCII and binaryConvert an STL 3D model between its ASCII (text) and binary encodings. Both describe the same triangle mesh, so this is a direct parse-and-rewrite with no 3D engine involved.Takes one file