Free · runs in your browser · no signup

Convert OBJ to GLB, Textures Included

An OBJ model usually comes as several files: the .obj geometry, a .mtl material file and a folder of images. GLB packs all of that into one file that web viewers, AR and game engines load directly. Add the files together and this page bundles them into a single .glb.

Loading the converter...

How to use it

  1. 1

    Select all the files

    Pick or drop the .obj together with its .mtl and texture images (PNG, JPG, TGA, BMP or WebP) in one go. An .obj on its own works too.

  2. 2

    Check the preview

    You see the model with its materials. Any texture the MTL names but you did not add is listed, so you can add it and try again.

  3. 3

    Set scale and axis

    GLB uses metres. Pick centimetres or millimetres to metres if the OBJ was made in those units, and rotate only if it lies on its back.

  4. 4

    Download the GLB

    One file with geometry, materials and images embedded. Upload it anywhere that accepts glTF.

What to know before you convert

  • Textures are matched by file name, so folder paths inside the .mtl do not matter, but each image has to be added with the files. Missing ones are listed and replaced with plain colour.
  • OBJ materials use the old Phong model. Colours, opacity and shininess are converted to glTF metal-roughness values, which is close but not always identical to what you saw in the modelling tool.
  • Colour (diffuse), normal and emissive maps are carried over. Bump, specular and separate opacity maps have no direct glTF equivalent and are skipped; the material opacity value is kept.
  • OBJ has no animation, rigging or scene hierarchy beyond groups, so neither does the GLB. Groups become separate meshes.
  • Images are embedded as they are. Very large textures make large GLB files; resize them before converting if the GLB is for the web.

Don't have a model?

Create one with AI from a photo, a sentence or a sketch. The generators use credits; this converter is free and stays in your browser.

Frequently Asked Questions

The colours and image links of an OBJ live in its .mtl file, and the images are separate files. If only the .obj is added, there is nothing to carry over. Select the .obj, the .mtl and every texture image together, then convert again.
No. The converter looks textures up by file name only, so an MTL that points to C:\project\textures\wood.jpg still finds a wood.jpg you added. The names have to match, though capitals do not matter.
GLB, the binary form of glTF 2.0. It holds the JSON description, the mesh data and the images in one file, which is easier to upload and share than a .gltf with separate .bin and image files.
OBJ files do not say which unit they use, and glTF viewers read numbers as metres. A model built in centimetres will look 100 times too big. Use the scale option to convert centimetres, millimetres or inches to metres.
Yes. The output is standard glTF 2.0 binary written by the three.js GLTFExporter, which Blender, Unity (with glTFast), Unreal, Godot, Babylon.js, three.js and model-viewer all import.
No. The page reads the file and converts it inside your browser with the open-source three.js library. Nothing is sent to our servers, there is no account, and no credits are used. Closing the tab discards everything.