data(assets): promote the four spike GLBs — first production environment assets (T-1204)
table_baroque, chair_modernist, desk_scifi (furniture, with mask sidecars) and lion_statue (props, non-tintable) enter client/assets/models/ under the category-first convention, byte- identical to the spike sources (MD5-verified; spikes/ untouched, vw_beetle excluded per the Q-067 deferral). Postprocess verified already-applied by Blender node-graph inspection (mat_primary, roughness=1.0/specular=0.0 shader inputs — the convenience properties read stale defaults, the graph is authoritative), so not re-run. All four registered in manifest.json at 'planned' with footprint_tiles [1,1] (a flagged judgment call — normalized spike geometry erases real-world scale; the brief ruling goes to araminta in review). In-engine proof: clean headless import + ResourceLoader load + instantiate for all four. Discovery documented in conventions.md §2 + glb-gen SKILL.md: Godot externalizes the GLB's embedded texture as a <model>_Image_0.png sidecar referenced by binary UID — it must be committed or loading breaks with an undiscoverable dependency error. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -104,6 +104,18 @@ Promotion = repo-canonical (D-241): an asset entering the manifest AND
|
||||
in `spikes/`. Naming, mask-sidecar, and texture conventions are in
|
||||
`docs/assets/visual/conventions.md`.
|
||||
|
||||
**Promotion commits three files per tintable model, two for non-tintable.**
|
||||
Copying the `.glb` (+ `_mask.png`, if the asset is tintable) into
|
||||
`client/assets/models/{furniture,props}/` is not the last step — run a
|
||||
headless import (`godot4 --headless --path client --import`) after copying,
|
||||
which generates a third required file, `<model>_Image_0.png`, next to the
|
||||
`.glb`. Godot's scene importer externalizes the GLB's embedded texture to
|
||||
this loose file and the compiled scene references it by UID even with
|
||||
`gltf/embedded_image_handling=3` set (confirmed Godot 4.6, T-1204). It must be
|
||||
committed with the rest — see `conventions.md` §2 for the full failure mode
|
||||
(deleting it breaks `ResourceLoader` loading with a binary UID dependency
|
||||
error that no text search of the compiled `.scn` will surface).
|
||||
|
||||
## Post-process in Blender
|
||||
|
||||
Normalize scale, center, generate recolor mask, adjust materials:
|
||||
|
||||
Reference in New Issue
Block a user