GLB — 64 Nodes Sharing One Mesh
An 8x8 field of columns built from a single 12-triangle mesh referenced by 64 nodes with seeded random heights. Core-glTF instancing needs no extension: the file is tiny, and the interesting question is whether your renderer batches the 64 draws or issues them one by one.
Specifications
- Format
- glTF 2.0 binary (GLB)
- Nodes
- 64
- Meshes
- 1
- Instancing
- node reuse (core glTF)
- Grid
- 8 x 8
- Height Range
- 0.4 to 1.6
- Seed
- 20260807
Testing contract
Expected to pass- Scenario
- Count draw calls and unique mesh uploads when rendering this scene.
- Expected result
- One mesh upload and, in a batching renderer, far fewer than 64 draw calls; the geometry buffers appear exactly once in the file.
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 — 64 Nodes Sharing One Mesh” is a deterministic Novus Examples fixture for Conversion testing, Mesh processing QA, Performance testing. The same content exported across many formats and linked as a group, so you can convert one and diff against the expected twin.
Documented properties for this file: seed 20260807 · 64 nodes · 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("instanced-grid.glb")
print(mesh.bounds, mesh.faces.shape)Related files
- glbGLB — Float32 Vertex BaselineAn unquantised sphere: 32-bit floats for both positions and normals, 24 bytes of attribute data per vertex. The uncompressed reference for the quantized and gzip twins in this group.

- glbGLB — Interleaved Vertex Attributes (byteStride 32)Position, normal and UV packed into ONE bufferView with byteStride 32 and three accessors at offsets 0, 12 and 24 — the GPU-friendly layout, and the one a naive parser mis-reads because it assumes each accessor owns its view. Twinned here with a tightly-packed version of the same sphere.

- glbGLB — KHR_mesh_quantization TwinThe same sphere with positions as normalised 16-bit and normals as normalised 8-bit integers under KHR_mesh_quantization — 66.6% of the float32 twin's bytes. The extension is in extensionsRequired, so a loader without support must refuse the file rather than render garbage.

- glbGLB — Tightly-packed Vertex AttributesThe same sphere with every attribute in its own bufferView and no byteStride — the layout most exporters emit and most parsers assume. The control against which the interleaved twin in this group is diffed.

- glbGLB — 24-level Node HierarchyOne box mesh referenced by a 24-deep chain of nodes, each adding a translation, an 11-degree rotation and a 0.94 scale, so the result spirals. Any error in matrix accumulation compounds visibly by the tip instead of hiding in rounding.

- glbGLB — Node Transforms as 4x4 MatricesSix cubes in a ring whose nodes carry a column-major 4x4 `matrix` and no translation/rotation/scale keys — the encoding a DCC exporter uses when a transform cannot be decomposed. Paired with a TRS twin of the identical ring.

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