Skip to content
2dto3D

Open a glTF file in your browser

Drop in a .gltf or .glb and explore it from every angle. Reads meshopt-compressed files that render blank elsewhere, and launches AR on a phone.

Drop a model

Drop a GLB or glTF file

or click to choose one. Your file never leaves your browser.

Runs locally · nothing uploadedGLB / GLTF

Runs entirely in your browser. Your file is never uploaded, and there is no sign-up.

glTF and its sidecar files

The single most common problem with .gltf files has nothing to do with the viewer. A .gltf is a JSON document that references its geometry buffer and texture images as separate files in the same folder. Move or upload the .gltf on its own and those references break, so the model arrives as untextured geometry or fails outright.

GLB solves this by packing the JSON, the binary buffer and every texture into one file. If you are sharing a model, embedding it, or handing it to AR, use GLB.

What this viewer reads

  • glTF 2.0 geometry, PBR materials, textures and animations.
  • Files compressed with EXT_meshopt_compression, which most viewers cannot decode.
  • Both .gltf and .glb, though a .gltf without its sidecars loses its textures.

Draco-compressed files are the exception. They need a separate decoder, and this tool reports that clearly rather than showing you an empty scene.

No 3D model yet?

Turn a single product photo into a realistic 3D model, usually in about 5 minutes. Explore it, view it in AR at real size, embed it, or export it to any of 7 formats. Pay as you go from $5, no subscription.

Upload a product photo
JPEG or PNG, up to 4 images, 18 MB each. We'll generate the angles.

Frequently asked

My .gltf opens without textures. Why?

A .gltf file is JSON that points at separate .bin and image files sitting next to it. Selecting the .gltf on its own leaves those behind, so you get untextured geometry. Convert it to a .glb, which packs everything into one file, and the problem disappears.

What is the difference between glTF and GLB?

Same format, different packaging. glTF is JSON plus loose sidecar files; GLB is the identical data in a single binary file. GLB is what you want for sharing, embedding, or AR, because there is nothing to lose track of.

Is the file uploaded?

No. It is read and rendered by your browser locally. Nothing is transmitted to us and there is no account required.

Does it handle compressed files?

Meshopt-compressed files render correctly, which is the most common reason a glTF appears blank in other viewers. Draco-compressed files are not supported and will report an error rather than fail silently.

Last updated 2026-07-30