Skip to content
Novus Examples
obj5.2 MB

G char mage: reconstructed mesh (OBJ)

A single-image 3D reconstruction of stylised fantasy mage character render, written as Wavefront text, one `v` line per vertex and one `f` line per face. Its twin in this group is the same mesh written as the other format, from ONE reconstruction rather than two runs - so the pair tests whether a reader returns the same geometry from two containers with nothing in common. Both hold 32,788 vertices and 65,592 triangles; those counts were read from the GLB's accessor table and by counting lines in the OBJ, by separate code, and a disagreement would have stopped this shipping. It is closed: every edge belongs to exactly two triangles, so there are no holes and no non-manifold edges. The bounding box measures 0.1575 x 0.9984 x 1.0033 units.

obj

model/obj

5.2 MB
Vertices
32788
Triangles
65592
Boundary Edges
0
Non Manifold Edges
0
Container
OBJ
Role
pair-member

Binary obj: no in-browser preview. Download it above to open in a compatible application.

Specifications

Vertices
32788
Triangles
65592
Boundary Edges
0
Non Manifold Edges
0
Container
OBJ
Role
pair-member
Pair Format
glb
Model
TripoSR (MIT), marching cubes at detail 128
Cutout
BiRefNet background removal, applied before reconstruction
Detail
128
Surface Threshold
25
Object Fills
0.85
Source Plate
nss-g-char-mage_00001_.png
Bounding Box Extent
0.1575 x 0.9984 x 1.0033
Synthetic
true
Disclosure
Reconstructed from an AI-generated plate. Synthetic geometry, not a scan of a real object.
Schema Version
1

Testing contract

Expected to pass
Scenario
Load this file and its GLB twin in the same pair, then compare vertex count, triangle count and bounding box between the two.
Expected result
Both report 32,788 vertices and 65,592 triangles over a bounding box of 0.1575 x 0.9984 x 1.0033 units, because they were written from ONE reconstruction rather than two runs. That is the check worth making: a reader that drops vertices, re-triangulates a face or flips an axis still returns a file that loads and still looks like the object, and only a second encoding of the same geometry exposes it. Every edge belongs to exactly two triangles, so the surface is closed: no holes, no non-manifold edges.

What is a .obj file?

OBJ (Wavefront OBJ) is a text-based 3D geometry format defining vertices, texture coordinates, normals, and faces, and referencing materials through a companion MTL file. It is simple, widely supported, and can represent polygonal meshes with UV mapping. It is a common interchange format across 3D tools.

How to use this file

Use an example OBJ to test mesh and UV parsing, MTL material resolution, and importers in 3D engines, renderers, and modeling applications.

How to use this file for testing

“G char mage: reconstructed mesh (OBJ)” is a deterministic Novus Examples fixture for Mesh processing QA. Deterministic GLB meshes with known geometry and triangle counts for regression-testing mesh import/export, decimation, repair, and validation pipelines.

Documented properties for this file: pair-member. 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("g-char-mage.obj")
print(mesh.bounds, mesh.faces.shape)

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