Skip to content
Novus Examples
glb1.2 KB

GLB — Duplicate Vertices, Split Seam

The duplicated-corner cube as a GLB. Because glTF stores every attribute per vertex, the duplication doubles the position and normal buffers for a shape that needs eight corners — the cheapest optimisation an asset pipeline can make, and the one this fixture measures.

Loading 3D preview…

Specifications

Format
glTF 2.0 binary (GLB)
Vertices
16
Unique Positions
8
Duplicate Vertices
8
Triangles
12
Size Cost
double the vertex attributes for the same shape

Testing contract

Expected to recover
Scenario
Run a glTF optimiser and compare the output's accessor counts against this file's.
Expected result
POSITION and NORMAL counts drop from 16 to 8 with the indices remapped; the rendered silhouette is unchanged.

What is a .glb file?

GLB is the binary form of glTF, packaging 3D scene geometry, materials, textures, animations, and node hierarchy into a single self-contained file. It is optimized for efficient runtime loading and is often called the JPEG of 3D. It is widely used in web, AR, and real-time 3D applications.

How to use this file

Use an example GLB to test glTF loaders, embedded-texture and animation handling, and real-time rendering pipelines in web or game engines.

How to use this file for testing

“GLB — Duplicate Vertices, Split Seam” is a deterministic Novus Examples fixture for Mesh repair testing, Mesh processing QA. A watertight mesh paired with a deliberately broken twin (holes, missing faces, open ends) — the input and intended result for a mesh-repair / hole-filling tool.

Documented properties for this file: glTF 2.0 binary (GLB). Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.

3D and CAD fixtures carry one small, documented solid or scene. Convert and inspect against the known geometry, units, and structure; format twins let you diff interchange fidelity, and the 3D viewer previews the actual mesh.

Code examples

import trimesh  # pip install trimesh

mesh = trimesh.load("duplicate-vertices.glb")
print(mesh.bounds, mesh.faces.shape)

Generated by generation/models_p7.py. Free for any use, no attribution required — license.