Noor Haddad

Pro edition

Asset Spec.

The demo is the seven checks a client should demand. This is the other side of the same document — the 10-line specification sent before work starts, so that none of the seven is ever a discovery. The failure mode in this trade is not the wrong number. It is no number, and two people quietly assuming different ones.

The specification

Ten lines, agreed before anything is modelled
FieldDefaultWhy this one
Units and scale Metres, 1 unit = 1 m Stated in the spec, not inferred from the file. The single most common integration failure, and free to prevent.
Up axis Z-up, -Y forward Whatever the target wants. What matters is that it is written down rather than discovered on import.
Pivot World origin, base of object Or the hinge, or the mount point — but named per asset type rather than left to whoever was modelling that day.
Topology Quads, loops at deformation N-gons permitted only on flat, non-deforming faces, and only where they save real time.
UV layout Non-overlapping, 0–1 or udim Overlaps are allowed only where explicitly agreed for mirrored parts, and never on anything that has to bake lighting.
Texel density 10.24 px/cm at 2K One number for the whole set. Consistency matters far more than the value — a crisp panel next to a soft one is worse than both being soft.
Material slots Max 2 per prop, 4 per hero A draw-call budget in disguise. Priced into the model rather than fixed afterwards by somebody else.
Map set BaseColor, Roughness, Metallic, Normal, AO Named exactly, in that order, with a stated convention for the normal map’s green channel.
Naming SM_<set>_<object>_<variant> Any convention beats none. This one is chosen because a stranger can parse it without documentation.
Formats FBX + glTF + source FBX for pipelines, glTF for anything web or preview, and the source file because a delivery only its author can open is not one.

What survives a round trip

Half of every “the file is broken” email is a format that was never going to carry the thing somebody expected it to carry.

Interchange formats by what they keep and what they drop
FormatKeepsLosesUse it for
FBX Hierarchy, pivots, UVs, smoothing, basic materials Procedural anything, modifier stacks, node graphs The default for game and film pipelines, and the one most likely to be asked for.
glTF PBR materials properly, hierarchy, animation Multiple UV sets in some importers, custom shaders Web, preview, and anything a client needs to open without buying software.
OBJ Geometry and UVs, and very little else Hierarchy, pivots, animation, real materials Only for a single static mesh. It is not a delivery format in 2026 and asking for it usually signals a misunderstanding.
USD Nearly everything, including layering and variants Little — but tooling support is uneven outside film Increasingly the right answer for large scenes; check the target reads it before agreeing to it.
Source Everything, by definition Portability to anyone without the same software Always shipped alongside, never instead.

Acceptance, in six artefacts

  1. 01

    Wireframe screenshot, front and three-quarter

    Catches: Topology, density distribution, hidden n-gons

  2. 02

    UV layout screenshot

    Catches: Overlaps, wasted space, inconsistent density

  3. 03

    Bounding box in millimetres

    Catches: Scale errors, which is most integration failures

  4. 04

    Outliner screenshot

    Catches: Naming, hierarchy, stray objects left in the scene

  5. 05

    Triangle count against the stated target

    Catches: Budget overruns while they are still cheap to fix

  6. 06

    Import test into the actual target

    Catches: Everything the other five miss, and it takes ten minutes

Six artefacts, none of which takes an artist more than a minute to produce, and together they catch essentially every failure that would otherwise surface a month later. A studio that will not send them is telling you something.

6 things that go wrong without one

  1. No units in the spec, so the asset arrives at 100× and every scene value downstream is wrong.
  2. Texel density unstated, so a hero panel and the wall beside it are visibly different resolutions.
  3. Material limits agreed verbally, discovered as twelve draw calls on a background prop.
  4. OBJ requested by habit, losing the hierarchy and the pivots the spec spent a paragraph defining.
  5. Approval given from renders, with no wireframe ever requested.
  6. A normal-map green channel convention nobody wrote down, and every surface subtly inverted.

Defaults here suit hard-surface and environment work for real-time targets. Character, film and simulation pipelines each add constraints this sheet does not cover, and borrowing a spec from the wrong discipline is worse than writing a short one from scratch.

Back to the checks