Blender Normalization Worker Spec
Purpose
Define the standard working conversion step between raw sourced assets and Unity-ready artifacts.
Inputs
raw/<asset_id>/source_download.*- Source metadata snapshot (
asset_manifest.json) - Optional preview images for manual QA
Outputs
working/<asset_id>/normalized.blendworking/<asset_id>/normalized.glbworking/<asset_id>/validation_report.jsonworking/<asset_id>/preview.png
Standard Steps
- Import raw asset into Blender.
- Apply/normalize transforms (scale, forward/up axes, center pivot policy).
- Rename objects and materials into deterministic schema-compatible names.
- Merge duplicate materials and flatten texture naming.
- Optional rig conversion for animation-ready assets.
- LOD/decimate pass toward target budget:
- Infantry: 1k–6k tris
- Elite infantry/hero: 4k–12k tris
- Small vehicle: 3k–15k tris
- Large vehicle: 10k–40k tris
- Export GLB + Blender source; emit preview.
Validation Hooks
- Missing textures check
- Non-manifold geometry
- Degenerate scale check
- Bone/rig consistency if
rigged=true - Texture resolution budget warning
Hard fail on:
- corrupt import
- zero-geometry output
- missing provenance metadata
Policy Controls
- All jobs read profile from
--profile. - Profiles map to stylistic transforms:
dinosw_lowpoly_v1: aggressive edge simplification, material flattening, hard silhouette preservation.prototype_fast_v1: faster import path with lower cleanup strictness.