GLB to FBX Converter

Convert a GLB file to FBX right in your browser. The converter reads the GLB with the same 3D engine many web viewers use, places every part where the file puts it (moves, turns, scales and mirrored parts are baked in) and writes a binary FBX 7.4 file. Materials become FBX Phong materials, and the textures go inside the FBX as the original PNG or JPEG images, so one file carries everything; you can also get them as separate files in a ZIP. glTF is in metres and FBX counts in centimetres by default, so the converter writes centimetres (the numbers × 100) unless you choose metres, millimetres or inches, and the FBX says which unit it uses. Draco and meshopt compressed GLBs are read too. This converter writes one still shape: animations, bones and morph targets are not carried, and the rest pose or a frame you pick goes into the FBX. Every FBX is read back before you download it, and the page shows what it found. Nothing is uploaded.

100% private — everything runs in your browser. Everything runs in your browser; your GLB files are never uploaded.

100% private — runs in your browser
Drop a GLB file here or click to chooseBinary glTF (.glb). A .gltf with its .bin and textures works too: select them together or open the folder.

Loading the 3D engine…

File details

Size and direction

What goes in

Runs in your browser: your files are read on your device and never uploaded, and web addresses inside a model are not fetched. The 3D engine (three.js) loads from the jsDelivr CDN. You may use what you make here, including commercially, with no credit needed. The rights in your own models and textures stay as they were. Not affiliated with Autodesk.

How to convert a GLB to FBX

  1. Drop a GLB on the box (or a .gltf with its .bin and textures), or click Try a sample.
  2. Check the 3D view, the size line and the material table.
  3. Choose FBX units and the up direction, how textures are stored, and what goes in: normals, texture coordinates, vertex colours.
  4. Read the check line, then click Download FBX (or FBX + texture files as a ZIP).

What you can use it for

  • Bring a web or AR model into a 3D app or game engine that imports FBX
  • Hand a model to someone whose tools take FBX but not GLB
  • Get one FBX file with the textures inside it instead of a folder of parts
  • Move a model between Y-up and Z-up apps with the size stated
  • Freeze a posed or animated model in one shape as a still FBX mesh
  • Check what a GLB contains: parts, materials, textures, size

What carries over from GLB to FBX

In the sourceIn the FBX from this converter
Meshes and partsOne FBX mesh per glTF mesh, named after the node; triangles kept as they are
Node transforms (move, turn, scale, mirror)Baked into the vertex positions, so every part sits where it did (mirrored parts keep their faces pointing out)
MaterialsFBX Phong: base colour to diffuse, alpha to opacity, emission, roughness to shininess
TexturesEmbedded in the FBX as the original images, or as separate files in a ZIP
Texture coordinatesWritten per corner, turned to the FBX convention (glTF counts from the top of the image, FBX from the bottom); texture offset and scale baked in
NormalsWritten per corner (computed when the mesh has none, or after a pose change on a rigged mesh)
Vertex coloursOptional, written as colours with alpha
Animations, bones, morph targetsNot written: one pose (rest pose, or the first or last frame of a clip)
Cameras, lights, points and linesLeft out (meshes only here) and listed in the notes

The glTF 2.0 specification puts the texture origin (0, 0) at the upper left corner of the image, while FBX texture coordinates count up from the bottom, so each v is written as 1 − v.

How glTF materials become FBX Phong materials

glTF materialIn the FBXNotes
baseColorFactorDiffuseColorWritten as sRGB numbers, as FBX readers expect
baseColorTextureTexture on DiffuseColorThe original image
alpha and alphaMode BLENDOpacity and TransparencyFactor1 is fully opaque
roughnessFactorShininess = 2 ÷ roughness⁴ − 2 (at most 1,000)A rough match between the two lighting models
emissiveFactor, emissiveTextureEmissiveColor (+ texture)
normalTextureTexture on NormalMap
metallicFactor, metallicRoughnessTexture, occlusionTextureNot writtenNo FBX Phong slot; listed in the notes

What our test files give

Test fileWhat it checksTrianglesFBX meshesMaterialsTexturesFBX sizeBytesRead back the same
crate-textured-anim-morph.glbTextured crate on a base, a spin animation and a morph target (written in the rest pose)242214 × 2.2 × 4 cm15,772Yes
nested.glbNested nodes: moved, scaled ×2, turned 90° and mirrored; two materials on one mesh; texture scaled ×2244214 × 13 × 6 m21,964Yes
plain-two-parts.glbTwo plain parts, two colours242204 × 2.2 × 4 cm14,556Yes
colours.glbVertex colours on two parts3210300 × 100 × 0 cm10,028Yes
cylinder-meshopt.glbCylinder compressed with meshopt19211020.0012 × 30 × 20.0012 mm33,612Yes

Computed by the converter’s own writer from our own test files, read with the same three.js version the page uses. Every FBX was read back by the three.js FBX reader and by our own FBX reader with the same triangle count, size, materials and texture slots.

Units and size

FBX unitsThe sample crate (40 × 22 × 40 mm) becomes
Metres (UnitScaleFactor 100)0.04 × 0.022 × 0.04 m
Centimetres (UnitScaleFactor 1, the default)4 × 2.2 × 4 cm
Millimetres (UnitScaleFactor 0.1)40 × 22 × 40 mm
Inches (UnitScaleFactor 2.54)1.5748 × 0.866142 × 1.5748 in

glTF measures everything in metres. An FBX file states its unit as a UnitScaleFactor in centimetres, so the same model can be written with different numbers and the same real size.

Next steps

Need a print file? GLB to STL makes an STL from the same GLB. Check a print model in the STL viewer, or make a normal map for a texture with the Normal Map Generator.

Sources

Sources: Khronos glTF 2.0 Specification (“The units for all linear distances are meters”); Blender’s FBX exporter source (io_scene_fbx: the FBX unit is the centimetre; binary record and footer layout); three.js 0.186.1 FBXLoader source (Phong and Lambert materials, Z-up files turned to Y-up, UnitScaleFactor read).

More free tools

Working with 3D models?

View, convert and make 3D files with free tools that run privately in your browser, with no sign-up and no watermark.

See all free tools →

Frequently asked questions

Is this GLB to FBX converter free?

Yes. There is no sign-up, no watermark and no limit on how many files you convert. The conversion runs in your browser, so your GLB never leaves your device.

Are textures kept?

Yes. Each texture the materials use goes into the FBX as the original image from the GLB (PNG or JPEG, not re-compressed): the base colour as the diffuse map, plus normal and emission maps. Choose Separate image files to get them next to the FBX in a ZIP instead, or Leave out for colours only.

What happens to animations, bones and morph targets?

They are not written. This converter writes one still shape: the rest pose, or the first or last frame of an animation you pick. A rigged character comes out as a plain mesh in that pose, and morph targets are baked at the weights shown. Keep the GLB if you need the animation.

Will the FBX be the right size?

glTF files are in metres. FBX files state their unit with a UnitScaleFactor in centimetres, and centimetres are the usual FBX default, so by default a 2 m model becomes 200 units with UnitScaleFactor 1. Choose Metres to keep the numbers (UnitScaleFactor 100), or millimetres or inches. Apps that read the unit setting show the same real size either way.

How are glTF materials turned into FBX?

The base colour becomes the diffuse colour, alpha becomes opacity, emission stays emission, and roughness becomes a shininess value (rougher means less shiny). FBX Phong materials have no metalness or roughness maps, so those are listed in the notes and left out; the colours stay.

Which FBX version does it write?

Binary FBX 7.4, with Y-up or Z-up as you choose. Large arrays are compressed inside the file (you can turn that off). ASCII FBX is not written here.

Can it read Draco or meshopt compressed GLBs?

Yes. Both are decoded in your browser with the decoders that come with the same three.js version. Files that need KTX2 (Basis) compressed textures are not supported here yet, and the page says so.

How do I know the FBX is right?

Before the download is offered, the page reads the new FBX back with the three.js FBX reader (the same version that shows the model) and with our own FBX reader, and compares the triangle count, size, materials, texture slots and unit scale with what was written. If anything differs, the file is not offered. The files have been checked with these two readers; they have not been opened in every desktop 3D app.

Is my GLB uploaded?

No. The GLB is read and turned into FBX by JavaScript in your browser, so it never leaves your device. Only the 3D engine itself (three.js) is loaded from a public CDN. There is no sign-up and no watermark.