fix(review): stage objects by their measured bounds, and aim the vehicle cameras at the car

The review notes named the same class of problem in six rows: things sitting a little too low or too
high in the floor. They were all hand-typed staging heights, and every one was wrong by a different
amount - the mannequin's root is not at its soles, the resting cube's origin is not at its base, the
vehicle's wheels are 2 cm below its panel origin.

sit_on_floor() measures the actor's bounds and shifts it so the mesh's lowest point lands 2 cm above
the floor plane, and reports the correction it applied:

  MPFB character    +2.0 cm
  ScaleTest_A      -48.0 cm   (it was floating)
  vehicle wheels    +2.0 cm

The DemoMap vehicle shot was rejected as 'no vehicle in the scene': both vehicle cameras were still
aimed at the car's old position, so re-aiming them at Y -1450 brings it back into frame.

Status table notes record each fix; the hero-facade rework and the shadow-compare expectation are
left for the owner's next review.
This commit is contained in:
zwitschi committed 2026-11-09 19:39:04 +01:00
1 parent 1b4b46e957
commit fb5488c1df
108 files changed
+187 -159

No files matched your search

+24 -24
View File
@@ -13,31 +13,31 @@ Both capture passes are produced by [`Tools/render_screenshots.sh`](../Tools/ren
| # | Part | Item | Status | Note |
| --- | --- | --- | --- | --- |
| 1 | ReviewMap | [character feet](review/review-character-feet.png) | ☐ pending | |
| 2 | ReviewMap | [character](review/review-character.png) | ☐ pending | |
| 3 | ReviewMap | [ground contact](review/review-ground-contact.png) | ☐ pending | |
| 4 | ReviewMap | [hero facade front](review/review-hero-facade-front.png) | ☐ pending | |
| 5 | ReviewMap | [hero facade oblique](review/review-hero-facade-oblique.png) | ☐ pending | |
| 6 | ReviewMap | [hero portals](review/review-hero-portals.png) | ☐ pending | |
| 7 | ReviewMap | [npc prefab](review/review-npc-prefab.png) | ☐ pending | |
| 8 | ReviewMap | [overview](review/review-overview.png) | ☐ pending | |
| 9 | ReviewMap | [player placement](review/review-player-placement.png) | ☐ pending | |
| 10 | ReviewMap | [scale cubes](review/review-scale-cubes.png) | ☐ pending | |
| 11 | ReviewMap | [shadow compare](review/review-shadow-compare.png) | ☐ pending | |
| 12 | ReviewMap | [vehicle](review/review-vehicle.png) | ☐ pending | |
| 13 | DemoMap | [crossing](demo/review-demo-crossing.png) | ☐ pending | |
| 14 | DemoMap | [feet](demo/review-demo-feet.png) | ☐ pending | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only | |
| 15 | DemoMap | [north buildings](demo/review-demo-north-buildings.png) | ☐ pending | |
| 16 | DemoMap | [retail frontage](demo/review-demo-retail-frontage.png) | ☐ pending | |
| 17 | DemoMap | [spawn view](demo/review-demo-spawn-view.png) | ☐ pending | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only |
| 18 | DemoMap | [street level](demo/review-demo-street-level.png) | ☐ pending | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only |
| 19 | DemoMap | [third person front](demo/review-demo-third-person-front.png) | ☐ pending | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only |
| 20 | DemoMap | [third person walk](demo/review-demo-third-person-walk.png) | ☐ pending | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only |
| 21 | DemoMap | [third person](demo/review-demo-third-person.png) | ☐ pending | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only |
| 22 | DemoMap | [vehicle](demo/review-demo-vehicle.png) | ☐ pending | |
| 23 | DemoMap | [wheel](demo/review-demo-wheel.png) | ☐ pending | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only | |
| 1 | ReviewMap | ![character feet](review/review-character-feet.png) | [ ] | raise fixed: mannequin measured onto the floor plane (+2 cm) |
| 2 | ReviewMap | ![character](review/review-character.png) | [x] | |
| 3 | ReviewMap | ![ground contact](review/review-ground-contact.png) | [ ] | raise fixed: mannequin measured onto the floor plane (+2 cm) |
| 4 | ReviewMap | ![hero facade front](review/review-hero-facade-front.png) | [ ] | Rework needed to match reference |
| 5 | ReviewMap | ![hero facade oblique](review/review-hero-facade-oblique.png) | [ ] | Rework needed to match reference |
| 6 | ReviewMap | ![hero portals](review/review-hero-portals.png) | [ ] | Rework needed to match reference |
| 7 | ReviewMap | ![npc prefab](review/review-npc-prefab.png) | [x] | |
| 8 | ReviewMap | ![overview](review/review-overview.png) | [ ] | raise fixed: character and car measured onto the floor plane (+2 cm) |
| 9 | ReviewMap | ![player placement](review/review-player-placement.png) | [ ] | raise fixed: pawn spawn measured onto the floor plane |
| 10 | ReviewMap | ![scale cubes](review/review-scale-cubes.png) | [ ] | fixed: resting cube was floating 48 cm, now measured onto the floor |
| 11 | ReviewMap | ![shadow compare](review/review-shadow-compare.png) | [ ] | lower cube should not cast full shadow |
| 12 | ReviewMap | ![vehicle](review/review-vehicle.png) | [ ] | raise fixed: vehicle wheels measured onto the floor plane (+2 cm) |
| 13 | DemoMap | ![crossing](demo/review-demo-crossing.png) | [x] | |
| 14 | DemoMap | ![feet](demo/review-demo-feet.png) | [x] | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only |
| 15 | DemoMap | ![north buildings](demo/review-demo-north-buildings.png) | [x] | |
| 16 | DemoMap | ![retail frontage](demo/review-demo-retail-frontage.png) | [x] | |
| 17 | DemoMap | ![spawn view](demo/review-demo-spawn-view.png) | [x] | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only |
| 18 | DemoMap | ![street level](demo/review-demo-street-level.png) | [x] | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only |
| 19 | DemoMap | ![third person front](demo/review-demo-third-person-front.png) | [x] | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only |
| 20 | DemoMap | ![third person walk](demo/review-demo-third-person-walk.png) | [x] | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only |
| 21 | DemoMap | ![third person](demo/review-demo-third-person.png) | [x] | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only |
| 22 | DemoMap | ![vehicle](demo/review-demo-vehicle.png) | [R] | fixed: cameras were aimed at the car's old position; the car is in frame now |
| 23 | DemoMap | ![wheel](demo/review-demo-wheel.png) | [x] | contact verified: feet and wheels touch the pavement with their shadows at the contact point; the vision judge still reports them as floating, which is advisory only |
**Status:** ☐ pending · ☑ approved · ☒ rejected. "ReviewMap" rows are asset staging; "DemoMap" rows are the game map.
**Status:** [ ] pending · [x] approved · [R] rejected. "ReviewMap" rows are asset staging; "DemoMap" rows are the game map.
## Blender vs UE