---
title: "GLB to OBJ"
description: "Convert GLB to OBJ/MTL with textures for Blender, Maya, and 3D printing. All processing is done locally in your browser, so no files are uploaded."
toolId: "glb-to-obj"
category: "conversion"
subgroup: "model-conversion"
subgroupName: "3D Model Format Conversion"
url: "https://any3d.cc/en-US/tools/glb-to-obj"
markdown: "https://any3d.cc/llm/tools/glb-to-obj.md"
---

# GLB to OBJ

GLB to OBJ + MTL + textures, ready to edit.

**Category:** 3D Format Conversion Tools (`conversion`)
**Subgroup:** 3D Model Format Conversion (`model-conversion`)

**HTML:** https://any3d.cc/en-US/tools/glb-to-obj

> Runs entirely in the browser. Files are not uploaded to Any3D servers.

## Overview

The glb-to-obj tool unpacks a single GLB file into the classic OBJ workflow, exporting textures alongside geometry. GLB packs a glTF scene into one binary file, while OBJ is the widely supported text format used across DCC tools like Blender, Maya, and 3ds Max. Everything runs in your browser locally, so your files stay on your device.

## About Configuration Options

### General Settings

- **Up axis** (Default: Y-up): Determines the 'up' axis of the exported model. Different 3D software uses different conventions. Selecting the wrong system may cause the model to lie on its side.
  - `y-up` — Y-up (Recommended): Convention used by OpenGL, Three.js, and most Web 3D engines. Choose this for models from web or game engines.
  - `z-up` — Z-up: Convention used by Blender (default), 3ds Max, and some CAD software. Try this if the model appears sideways.
- **Rotation X** (Default: 0°; Range: -180° – 180°): Rotate the model around the X axis (degrees). Useful for correcting axis misalignment or print orientation.
- **Rotation Y** (Default: 0°; Range: -180° – 180°): Rotate the model around the Y axis (degrees). Useful for correcting axis misalignment or print orientation.
- **Rotation Z** (Default: 0°; Range: -180° – 180°): Rotate the model around the Z axis (degrees). Useful for correcting axis misalignment or print orientation.
- **Rotation Application** (Default: Root node transform): Choose how rotation is written to the exported model. Baking into vertices rewrites all vertex coordinates so every export format (including geometry-only formats such as STL and STEP) applies it consistently; root node transform keeps the original vertex coordinates, which is friendlier to animated or skinned models, but formats that ignore node transforms (such as STEP) won't apply the rotation.
  - `bake` — Bake into vertices: Rotation is written into all vertex coordinates and applies consistently to every export format; geometry data is rewritten.
  - `node` — Root node transform (Recommended): Rotation is written as a root node transform while vertex coordinates stay unchanged; better for skinned or animated models, but formats that ignore node transforms (such as STEP) won't apply it.

### OBJ Output Settings

- **Export MTL** (Default: Export MTL): Include a material definition file (.mtl) referencing texture images.
  - `true` — Export MTL (Recommended): Generates an .mtl file with material definitions and texture references. Recommended for editing in 3D software.
  - `false` — Geometry only: Output only the .obj geometry file without materials. Simpler but no material information.

## Format Information

### Input format

- **Extension:** glb
- **Full Name:** GL Transmission Format Binary (glTF 2.0)
- **Type:** 3D Model
- **Format:** GLB
- **Tools:** [Three.js](https://threejs.org), [Babylon.js](https://www.babylonjs.com), [Blender](https://www.blender.org)
- **Open With:** [3D Model Viewer](https://any3d.cc/en-US/tools/3dmodel-viewer), [GLB Viewer](https://any3d.cc/en-US/tools/glb-viewer)
- **Description:** GLB is the binary glTF 2.0 format from Khronos Group, packing meshes, materials, textures, and animations into one file. It is the standard for Web 3D and AR/VR, used by Three.js, Babylon.js, model-viewer, and e-commerce previews for self-contained, reliable distribution.

GLB supports PBR materials, skeletal animations, Draco and Meshopt compression, suitable for web, AR, and cross-software use. However, it loses CAD parametric history when tessellated from STEP or native CAD. For 3D printing, use STL or 3MF as slicers cannot import GLB.
- **Supported Features:**
  - Single self-contained binary file
  - PBR material support (base color, metallic, roughness, normal maps)
  - Skeletal animation, skinning, and morph targets
  - Draco mesh compression and KTX2 texture compression
  - Multi-mesh nodes and scene hierarchy
- **Notes:**
  - Some 3D printing slicers cannot directly import GLB files
  - Not suitable for CAD parametric editing

### Output format

- **Extension:** obj
- **Full Name:** Wavefront OBJ
- **Type:** 3D Model
- **Format:** OBJ
- **Tools:** [Blender](https://www.blender.org), [Maya](https://www.autodesk.com/products/maya/overview), [3ds Max](https://www.autodesk.com/products/3ds-max/overview)
- **Open With:** [3D Model Viewer](https://any3d.cc/en-US/tools/3dmodel-viewer), [OBJ Viewer](https://any3d.cc/en-US/tools/obj-viewer)
- **Description:** OBJ is an open 3D geometry format introduced by Wavefront in the 1980s. It uses human-readable text to record vertices, normals, UV coordinates, and face connections, and is supported by nearly all 3D software, making it a safe choice for cross-software mesh exchange. Materials and textures are usually defined in an accompanying .mtl file, which must be placed in the same directory.

OBJ does not contain animation or skeleton data, only static meshes. It is not suitable as a final format for character animation workflows. Additionally, the text encoding makes large model files bulky and complex scenes load slowly. For single-file delivery with embedded textures, GLB is a better option.
- **Supported Features:**
  - Human-readable text format
  - Separate geometry (.obj) and material (.mtl) files
  - Universal software support
  - UV coordinates and normal preservation
- **Notes:**
  - MTL file must stay with OBJ file for materials
  - No support for animation or skeletons

## How to use

### 1. Load GLB Asset

Select your GLB file containing embedded textures and PBR materials.

### 2. Configure Export MTL

Toggle material library output to keep surface color and texture bindings.

### 3. Set Texture Embedding

Choose between embedded textures or zipped external image maps.

### 4. Download OBJ Package

Save the resulting OBJ mesh alongside MTL files ready for DCC tools.

## FAQ

### Can I use the OBJ in Blender?

Yes, Blender imports OBJ and MTL natively. Put the OBJ, MTL, and texture files in the same folder, then import the OBJ, and the materials and textures apply automatically. This makes it easy to continue editing in Blender.

### Are vertex colors preserved when converting GLB to OBJ?

Yes, Any3D's glb-to-obj converter preserves vertex colors embedded in the GLB file, converting them to OBJ vertex colors. Normals and UV coordinates are also retained, which helps keep the model's look consistent across tools.

### Can I edit the OBJ file in a text editor?

Yes. OBJ is a plain-text format, so you can open it with any text editor to inspect or tweak vertices, faces, and other data. This is useful for quick fixes or debugging before you import the model into 3D software.

### Can I 3D print the OBJ?

Most slicers, such as Cura, PrusaSlicer and Bambu Studio, open OBJ, but they ignore textures and colors. For printing, GLB to STL is the simpler route.

### Will the OBJ be bigger than the GLB?

Usually yes. OBJ is plain text, while GLB is a compact binary file, so the same model takes more space as OBJ.

### What size will the model be in other apps?

OBJ has no unit field. GLB uses meters, so Blender shows the model at its real size, while a slicer that assumes millimeters may show it 1000 times smaller.
