diff --git a/Game/GigLine/Content/Hollywood/DemoMap.umap b/Game/GigLine/Content/Hollywood/DemoMap.umap index b9e63f2..0041601 100644 --- a/Game/GigLine/Content/Hollywood/DemoMap.umap +++ b/Game/GigLine/Content/Hollywood/DemoMap.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5805e28bd4c9368cd35f571bdceb0d6f048604226f69cf96fa385ee84380c211 +oid sha256:bcda8f7eacbbc8c20ff768177dc1c35863fd1bf403df142722880ca426e8a8f1 size 54509 diff --git a/Game/GigLine/Content/Test/ReviewMap.umap b/Game/GigLine/Content/Test/ReviewMap.umap index 060a2e4..a36c204 100644 --- a/Game/GigLine/Content/Test/ReviewMap.umap +++ b/Game/GigLine/Content/Test/ReviewMap.umap @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:69e8eb5f0765ce2900ef8b56463b3c0c484120dfc4a6f8ac40436427a178040b +oid sha256:3c34637f8b929cab7a68725f550f65ebdfac790cb5af5e2349ef661dccd8faa0 size 28706 diff --git a/MEMORY.md b/MEMORY.md index 090f0ee..1b9bd8d 100644 --- a/MEMORY.md +++ b/MEMORY.md @@ -495,3 +495,15 @@ Scope: facts and traps that cost time to establish. Planned work lives in [TODO. `v0.1.2` cut after the merge. - Assumptions recorded rather than hidden: dentil spacing, base and abacus dimensions are not resolvable in our reference photography. + +## 2026-11-09 — elevation cameras levelled (straight verticals) + +- archviz MUST: an elevation must not lean. `hero-facade-front` looked up ~4° from + 4.2 m at a 7.6 m target; `demo-spawn-view` and `demo-street-level` were pitched + too. All three now put the camera at the target's height, so + `FindLookAtRotation` yields pitch 0 and roll 0 and verticals are parallel by + construction. +- Do not try to *measure* verticality from the rendered PNG with a naive edge + scan: banners, windows and the parapet produce different edge sets at different + heights and the pairwise match is meaningless (it reported a 418 px "drift"). + Verify it geometrically in the camera list instead. diff --git a/Screenshots/demo/review-demo-crossing.png b/Screenshots/demo/review-demo-crossing.png index 860efee..72ccf7a 100644 --- a/Screenshots/demo/review-demo-crossing.png +++ b/Screenshots/demo/review-demo-crossing.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4ced7093dbfd87341f26824b3d383afcadba6b84d02e9d22b46dcae504107dcf -size 2555823 +oid sha256:380647ec83dcdc1d1796a3f6a033dfcb86d634c8312faf0c4332c795a12dcc81 +size 2592475 diff --git a/Screenshots/demo/review-demo-north-buildings.png b/Screenshots/demo/review-demo-north-buildings.png index 7b9f729..05d5445 100644 --- a/Screenshots/demo/review-demo-north-buildings.png +++ b/Screenshots/demo/review-demo-north-buildings.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4987b6fe125ea35123c1fc6b449316c5572611cde6fad23960a0133edd35c18a -size 2240373 +oid sha256:f01bd1af993306a5de88397e6f0bcc79f64f0167b06353e54b8cc0719ff4881a +size 2261865 diff --git a/Screenshots/demo/review-demo-spawn-view.png b/Screenshots/demo/review-demo-spawn-view.png index 7869397..ad2ad70 100644 --- a/Screenshots/demo/review-demo-spawn-view.png +++ b/Screenshots/demo/review-demo-spawn-view.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:78bc63eb208566fe96bcbdd22f055aa6e9e2cde5cf5fd46970e35786235642fb -size 2640328 +oid sha256:63d49011bcf0ab52b96c4ec7b27eeba3d27de3bbbf951a8f8e0ac09117995f3e +size 2628687 diff --git a/Screenshots/demo/review-demo-street-level.png b/Screenshots/demo/review-demo-street-level.png index de7adf8..f07d483 100644 --- a/Screenshots/demo/review-demo-street-level.png +++ b/Screenshots/demo/review-demo-street-level.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6f6eb060018bd904b1e55eeaf1607fff013cec44334ecdc76a1b0f1dad17cb06 -size 2419233 +oid sha256:d87896644e71e7a66b18fb9997d76d51a05cce5fa6fc97e3f698a45258d0b306 +size 2468639 diff --git a/Screenshots/review-character.png b/Screenshots/review-character.png index 0497f75..82f9181 100644 --- a/Screenshots/review-character.png +++ b/Screenshots/review-character.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:59471b51a90ae76085929d748e602d79f61006d930a3bcde3414d91cc224f336 -size 2750928 +oid sha256:44df56de845bde433eb1d6de2294462c9933d8f6a800a4f3cdc01793c5b1497b +size 2528497 diff --git a/Screenshots/review-ground-contact.png b/Screenshots/review-ground-contact.png index 3bd0354..4dbada6 100644 --- a/Screenshots/review-ground-contact.png +++ b/Screenshots/review-ground-contact.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:188c438887a4cd08377c68168597494ae0bfb50a556c11c74dd5f0daf8324606 -size 1802093 +oid sha256:9043e2e90ffead898262bae5c6f8ad0bbc700c5f52aa398ae6f486a858ac4af0 +size 1749002 diff --git a/Screenshots/review-hero-facade-front.png b/Screenshots/review-hero-facade-front.png index 2ee8935..d523315 100644 --- a/Screenshots/review-hero-facade-front.png +++ b/Screenshots/review-hero-facade-front.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2aea3c9551c08984a4284c82950ed2f8b393dd89b3de0460025569716d84421a -size 1740280 +oid sha256:c8c70fa7806c12a0cdbf2196b5f52f82f402e1b806f067e48a98970a94393e41 +size 1436443 diff --git a/Screenshots/review-hero-facade-oblique.png b/Screenshots/review-hero-facade-oblique.png index 7bf77c5..6428303 100644 --- a/Screenshots/review-hero-facade-oblique.png +++ b/Screenshots/review-hero-facade-oblique.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:43a4d8e5c944ef0eb68123a8f76a56cf34b33d300854aee026e3ccf7632a2ace -size 1405528 +oid sha256:c53e905de74ffb3783f2895ed667e352179b7bc411246b3b5bcdae88a5b299f9 +size 1306447 diff --git a/Screenshots/review-hero-portals.png b/Screenshots/review-hero-portals.png index 37e8782..c54cf5b 100644 --- a/Screenshots/review-hero-portals.png +++ b/Screenshots/review-hero-portals.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:05dea90306fb44fd88d1ea9ec258dd65940ed7fb6a4a126657d645c49cd45de3 -size 1368740 +oid sha256:f7455b6cc2a5a81ed1848956c41555a7775b705c24a34a0cbd8e0d0717e8d499 +size 1321848 diff --git a/Screenshots/review-npc-prefab.png b/Screenshots/review-npc-prefab.png index 0fed29f..74c6464 100644 --- a/Screenshots/review-npc-prefab.png +++ b/Screenshots/review-npc-prefab.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:63b5ce004bfe7804f00d6e49c75a4c461f5414214817b4cffca5a3df0b136277 -size 1793145 +oid sha256:99501ac2edfa22a64a7156fbc298930db64997008d7534189f0ee9a208b9506a +size 1735511 diff --git a/Screenshots/review-overview.png b/Screenshots/review-overview.png index 8680147..0da3826 100644 --- a/Screenshots/review-overview.png +++ b/Screenshots/review-overview.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e2b4e4008d19bbf05bd83b2700c5ad94e57a19d4dde3c57ccdddb31629e48216 -size 2417882 +oid sha256:f40eda489a19e01f3e0e6428940e4da7ee6865c7397e4e9bbe64f6e7a84b4af0 +size 2488592 diff --git a/Screenshots/review-player-placement.png b/Screenshots/review-player-placement.png index 49b4d25..102d17f 100644 --- a/Screenshots/review-player-placement.png +++ b/Screenshots/review-player-placement.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a42ba17def6436697939e3fc1b16d70318bdfdc5098343457bdbca937884aa08 -size 2208471 +oid sha256:f66e9a9e157c4663b971d15dcdfc8d3b67d64584c9f92a0d5ff207aac7637d37 +size 2019699 diff --git a/Screenshots/review-scale-cubes.png b/Screenshots/review-scale-cubes.png index 417db54..3d27366 100644 --- a/Screenshots/review-scale-cubes.png +++ b/Screenshots/review-scale-cubes.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:da899284357ce4fcb95d4da36789a20b3adf52b77643630c7790112a3e582e28 -size 2135172 +oid sha256:be833e2571fa2311499bbd806d32984c4a0b7bcaa33af2ff362fc6c94f553bff +size 1937905 diff --git a/Screenshots/review-shadow-compare.png b/Screenshots/review-shadow-compare.png index 895261c..3888105 100644 --- a/Screenshots/review-shadow-compare.png +++ b/Screenshots/review-shadow-compare.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b5c53303eeb5220eb026990204127e9d5c328614699f911ea6389969ab3a2f22 -size 1857026 +oid sha256:75c80b08b7905b9e6c9df673151c2b0d11362c3a433b402e22240b66c647181b +size 1726246 diff --git a/Tools/ue_build_review_map.py b/Tools/ue_build_review_map.py index 8c4aacb..583c037 100644 --- a/Tools/ue_build_review_map.py +++ b/Tools/ue_build_review_map.py @@ -236,7 +236,11 @@ try: # the plinth, which is what "portal detail" means here. ("hero-portals", unreal.Vector(hero_x + 100, -2250, 170), unreal.Vector(hero_x + 100, hero_y, 230)), # straight on from the north sidewalk; the building body spans Y -1443..+250 - ("hero-facade-front", unreal.Vector(hero_x + 200, -3200, 420), unreal.Vector(hero_x, hero_y + 400, 760)), + # Level horizon: camera height == target height, so the elevation's + # verticals stay parallel. The old shot looked up ~4 deg from 4.2 m at a + # 7.6 m target, which converged the columns — the one thing an + # architectural elevation must not do (archviz: "straight verticals"). + ("hero-facade-front", unreal.Vector(hero_x + 200, -3200, 760), unreal.Vector(hero_x, hero_y + 400, 760)), # oblique from the north-west, reading the colonnade in depth ("hero-facade-oblique", unreal.Vector(hero_x - 2200, -3400, 620), unreal.Vector(hero_x + 300, hero_y, 700)), ] @@ -276,12 +280,14 @@ try: demo_shots = [ # 14 m back so the 14.5 m elevation fits: at 2 m the camera sees only # the colonnade's underside. - ("demo-spawn-view", unreal.Vector(-13336, -3100, 420), unreal.Vector(-13336, 1300, 620)), + # Level horizon for the same reason: a block elevation is read by its + # verticals, and a pitched camera makes them lean. + ("demo-spawn-view", unreal.Vector(-13336, -3100, 620), unreal.Vector(-13336, 1300, 620)), # Street level, from the north sidewalk: the old camera sat at Y -400, # inside the facade body (which spans Y -1457..-200), so it looked at # the unlit back face. Y -2600 is on the sidewalk in front of the lit # elevation. - ("demo-street-level", unreal.Vector(-13420, -1650, 170), unreal.Vector(-13336, 1300, 400)), + ("demo-street-level", unreal.Vector(-13420, -1650, 170), unreal.Vector(-13336, 1300, 170)), # The designated mid-block crossing. Street arc length runs from the # west end (s=0 at X -27966 cm), so s=130.1 m is UE X -14956, not the # -24291 the old camera used (that is the s=36.6 crossing). Camera sits