Tools/hero_iterate.sh runs the whole chain - chmod the Blender files, build, import, render, judge, plate - and fails loudly at each step with its log under /tmp/gigline. Tools/hero_compare.py builds the side-by-side plate (reference | rendered, one height, labelled); two are committed for review. This pass: the stone is warmer in Blender (0.66/0.60/0.48 against the near-white blockout) and the banners are 1.35 x 6.2 m hung from 7.2 m, matching the reference proportion instead of the 1.55 x 5.4 that sat too low and too fat. Iteration 1 judge verdict, confidence 0.9: lacks warm sandstone, lacks fluted column detail, banners wrong, no doorways, no inscription or medallions. Checked against the plate, two of those are wrong (120 flute strips exist and cast shadows; three 1.2 m deep doorways with steps exist and read black) and three are real. The split is recorded in TODO.md with the next action for each - the important one being that the stone colour must change in the UE material (ue_hero_facade_import.py), not in the Blender material, which the render does not use.
Game
The Unreal project lives at Game/GigLine/GigLine.uproject once created. Nothing here yet.
What gets committed
Config/— engine and project settings, including the quality presets used for release checksSource/— C++ modulesContent/—0.1.0map, materials, meshes; LFS-trackedGigLine.uproject
What does not
Binaries/, Intermediate/, Saved/, DerivedDataCache/ — all generated. .gitignore covers them; do not add exceptions.
Engine
Installed outside the repository. Its path and exact version are recorded in ../Docs/toolchain.md. Nothing in this directory may assume a machine-specific engine path; the documented build procedure is ../Docs/build.md.