What is a GLB file?
GLB is glTF packed into one binary file — geometry, scene structure, materials and textures together.
glTF ("GL Transmission Format") is a Khronos standard aimed at delivering 3D scenes efficiently to viewers, browsers and game engines. It comes in two shapes: .gltf, a JSON document that usually references external .bin and image files, and .glb, which packs the JSON and one binary blob into a single file. GLB is what you want to hand to someone else, because there is nothing to lose track of.
Inside a GLB
- A 12-byte header, then a JSON chunk, then a binary chunk.
- The JSON describes accessors — typed views into the binary chunk — and the meshes, nodes, materials, cameras and animations that use them.
- Geometry is triangles referenced by an index buffer. Positions are 32-bit floats; attribute data may be quantised to smaller integer types.
- Meshes are placed in a scene by nodes, each with its own translation, rotation and scale, and nodes nest.
What it is good at
Being small and loading fast. Accessors let a viewer upload buffers to the GPU with no parsing beyond the JSON header, and the format has a physically-based material model, so a GLB usually looks the same wherever it is opened. It is the de-facto format for <model-viewer>, AR quick-look, and most web 3D.
Its limits
Triangles only — no quads. 32-bit positions, so a model in real-world survey coordinates loses millimetres. And no notion of a point cloud attribute set like intensity or scan pose, which is why laser scans live in E57 instead.
Converting
Our mesh converter reads GLB and glTF and writes OBJ, STL, PLY or OFF from them — applying node transforms and merging the scene into one mesh. It also writes GLB from any of those formats.