From a8b1b026ca7f443c59d09a829f1f51b642c39f47 Mon Sep 17 00:00:00 2001 From: Sagyam Thapa Date: Sat, 7 Nov 2026 11:29:35 +0545 Subject: [PATCH 1/2] City: textured grounds and floodlights in parks and squares The asset audit found every building and prop drawn from realistic models once the pack loads; the last flat-colour pieces were the grounds the code lays out itself. The sports ground gets mown turf and a rubber-crumb track, park paths and the pond's edge gravel, the plaza's centre ashlar, the town square paving, and the floodlights a footed mast with a frame of six lamps instead of a six-sided pole and one box. Flat colours stay as the fallback without the pack. Roadmap: offices and towers are one design each, so most of the City and Metropolis hours repeat O1 and L1; L2 joins O2/O3 as the next models. Co-Authored-By: Claude Opus 5.5 --- docs/APP.md | 3 +++ docs/ROADMAP.md | 7 ++++--- ui/src/city/models.ts | 41 ++++++++++++++++++++++++++++------------- 3 files changed, 35 insertions(+), 16 deletions(-) diff --git a/docs/APP.md b/docs/APP.md index f4b7cc6..f2b5598 100644 --- a/docs/APP.md +++ b/docs/APP.md @@ -101,6 +101,9 @@ are blueprints and their prices. Props, each one glb of named pieces: `cars` (`vehicles.py`), `trees`, `street`, `bridge`, `civic` (water tower, crane, scaffold, rubble, park pieces, people). Water in the Hamlet and Town is the civic water tower. +Plan parks and the square are laid out in code (`park()` and `utility()` in +`models.ts`) from these props on the shared ground textures (pave, ashlar, +gravel, grass). ### Model packs diff --git a/docs/ROADMAP.md b/docs/ROADMAP.md index b5270ef..c02f85d 100644 --- a/docs/ROADMAP.md +++ b/docs/ROADMAP.md @@ -17,9 +17,10 @@ area, if anything a reader needs changed. 1. **Use it for real** and tune: coin prices, build hours, shiny odds, escalation stages, nudges. Add real `[[routines]]`. -2. **Models**: O2 or O3 (the default order builds six identical O1 towers - at 50-98 h), then a second workshop (timber mill or brewery; S4 is the - only one, so the mayor never chooses). +2. **Models**: O2 or O3, then L2 (offices and towers are each one design, + so ~200 of the plan's ~350 h build O1 or L1 over and over), then a + second workshop (timber mill or brewery; S4 is the only one, so the + mayor never chooses) and a third downtown shop (only S1 and S2 fit). 3. **The master plan's real layout** in `ui/src/city/plan.ts`: streets, districts, reserved ground for squares and landmarks; a test that its lot ids match `plan.rs`. Then L5 city hall grows to its half block, and diff --git a/ui/src/city/models.ts b/ui/src/city/models.ts index 851166e..5be8254 100644 --- a/ui/src/city/models.ts +++ b/ui/src/city/models.ts @@ -892,6 +892,11 @@ const tintOf = (i: number): Paint => ({ wall: i, accent: 0, roof: 0, signs: 0 }) */ const LAWN_TINT = 0xbcae88; +/** Loose gravel or sand (paths, a pond's edge, a running track), tinted, from the shared texture library. */ +function gravelMat(color: number, tile = 2.4): THREE.Material { + return groundMat("gravel", tile, { roughness: 1, normal: 0.7, color }); +} + /** A lawn: mown grass from the realistic library when loaded, else flat green. */ export function lawn(): THREE.Material { return hasReal("trees") ? groundMat("grass", 2.2, { roughness: 0.95, normal: 0.8, color: LAWN_TINT }) : mat(0x6f9a4f, { roughness: 1 }); @@ -1165,8 +1170,9 @@ function utility(s: Spec): { group: THREE.Group; info: ModelInfo } { info.beacons.push(new THREE.Vector3(0, top + 6.3, cz)); } else { const park = s.style === "park"; - p.box(park ? lawn() : mat(0xb9b2a6, { roughness: 0.9 }), LOT - 0.4, KERB + 0.04, LOT - 0.4, 0, 0, cz); - if (park) p.box(mat(0xc8bfae, { roughness: 1 }), 2.2, KERB + 0.06, LOT - 0.4, 0, 0, cz); + const real = hasReal("street"); + p.box(park ? lawn() : real ? groundMat("pave", 3.6, { roughness: 0.88, color: 0xe6e0d4 }) : mat(0xb9b2a6, { roughness: 0.9 }), LOT - 0.4, KERB + 0.04, LOT - 0.4, 0, 0, cz); + if (park) p.box(real ? gravelMat(0xd8ccb0) : mat(0xc8bfae, { roughness: 1 }), 2.2, KERB + 0.06, LOT - 0.4, 0, 0, cz); if (hasReal("civic")) { const water = (role: string) => (role === "water" ? waterMat({ amp: 0.5, scale: 2.5, ring: [s.x + cz * Math.sin(s.rot), s.z + cz * Math.cos(s.rot)] }) : undefined); civic(p, "fountain", 0, KERB, cz, { scale: new THREE.Vector3(0.85, 0.85, 0.85), swap: water }); @@ -1543,14 +1549,15 @@ export function park(p: Parts, k: ParkSpec, pole: THREE.Material, bulb: THREE.Ma const W = BLOCK_X; const D = BLOCK_Z; const lawn_ = hasReal("trees") ? lawn() : mat(0x6a9a48, { roughness: 1 }); - const paving = hasReal("street") ? groundMat("pave", 3.6, { roughness: 0.88, color: 0xf2eee6 }) : mat(0xc4bcae, { roughness: 0.9 }); + const real = hasReal("street"); + const paving = real ? groundMat("pave", 3.6, { roughness: 0.88, color: 0xf2eee6 }) : mat(0xc4bcae, { roughness: 0.9 }); const flat = (m: THREE.Material, g: THREE.BufferGeometry, x: number, z: number, y = KERB + 0.02) => p.add(m, g, X + x, y, Z + z, -Math.PI / 2); const bench = (x: number, z: number, ry: number) => prop(p, "bench", X + x, Z + z, ry); switch (k.kind) { case "plaza": { p.box(paving, W, KERB, D, X, 0, Z); - flat(mat(0x9a8e7e, { roughness: 0.9 }), new THREE.CircleGeometry(10, 32), 0, 0); - flat(mat(0xd8d0c0, { roughness: 0.9 }), new THREE.RingGeometry(10, 10.8, 32), 0, 0, KERB + 0.03); + flat(real ? groundMat("ashlar", 2.4, { roughness: 0.85, color: 0xd4c8b4 }) : mat(0x9a8e7e, { roughness: 0.9 }), new THREE.CircleGeometry(10, 48), 0, 0); + flat(real ? groundMat("ashlar", 2.4, { roughness: 0.8, color: 0xf0ebe0 }) : mat(0xd8d0c0, { roughness: 0.9 }), new THREE.RingGeometry(10, 10.8, 48), 0, 0, KERB + 0.03); prop(p, "fountain", X, Z, 0, 1.45); if (hasReal("civic")) p.extra(fountainSpray(X, KERB, Z, 1.45)); for (let i = 0; i < 8; i++) { @@ -1569,7 +1576,7 @@ export function park(p: Parts, k: ParkSpec, pole: THREE.Material, bulb: THREE.Ma case "park": { p.box(lawn_, W, KERB, D, X, 0, Z); // A loop path round the lawn, with a cut through the middle. - const path = mat(0xc9b896, { roughness: 1 }); + const path = real ? gravelMat(0xe0d0a8) : mat(0xc9b896, { roughness: 1 }); const ax = W / 2 - 6; const az = D / 2 - 4.5; const n = 36; @@ -1584,7 +1591,7 @@ export function park(p: Parts, k: ParkSpec, pole: THREE.Material, bulb: THREE.Ma // A pond with a sandy edge, and the bandstand across the lawn. const pond = { x: -12, z: 1, rx: 10, rz: 5.5 }; const sand = new THREE.CircleGeometry(1, 28).scale(pond.rx + 0.9, pond.rz + 0.9, 1); - flat(mat(0xb8a87c, { roughness: 1 }), sand, pond.x, pond.z, KERB + 0.025); + flat(real ? gravelMat(0xd8c490) : mat(0xb8a87c, { roughness: 1 }), sand, pond.x, pond.z, KERB + 0.025); flat(waterMat({ amp: 0.9, scale: 1.7, color: 0x1d3c3a }), new THREE.CircleGeometry(1, 28).scale(pond.rx, pond.rz, 1), pond.x, pond.z, KERB + 0.04); prop(p, "bandstand", X + 16, Z - 1); // Trees wherever the paths, the pond and the bandstand leave room. @@ -1604,9 +1611,11 @@ export function park(p: Parts, k: ParkSpec, pole: THREE.Material, bulb: THREE.Ma p.box(lawn_, W, KERB, D, X, 0, Z); const pz = -3; const [pw, pd] = [46, 22]; - p.box(mat(0xa85a40, { roughness: 1 }), pw + 6, KERB + 0.02, pd + 5, X, 0, Z + pz); + // A rubber-crumb surround and a mown pitch: light and dark bands of one turf. + p.box(real ? gravelMat(0xff8a68, 1.6) : mat(0xa85a40, { roughness: 1 }), pw + 6, KERB + 0.02, pd + 5, X, 0, Z + pz); for (let i = 0; i < 10; i++) { - p.box(mat(i % 2 ? 0x5e9a3e : 0x6aa646, { roughness: 1 }), pw / 10, KERB + 0.04, pd, X - pw / 2 + (i + 0.5) * (pw / 10), 0, Z + pz); + const turf = real ? groundMat("grass", 1.8, { roughness: 0.95, normal: 0.6, color: i % 2 ? 0xa8c888 : 0xc4dca0 }) : mat(i % 2 ? 0x5e9a3e : 0x6aa646, { roughness: 1 }); + p.box(turf, pw / 10, KERB + 0.04, pd, X - pw / 2 + (i + 0.5) * (pw / 10), 0, Z + pz); } const white = mat(0xf2f2ea, { roughness: 0.7 }); const ly = KERB + 0.045; @@ -1621,16 +1630,22 @@ export function park(p: Parts, k: ParkSpec, pole: THREE.Material, bulb: THREE.Ma prop(p, "goal", X + (sx * pw) / 2, Z + pz, -sx * Math.PI / 2); } line(0.15, pd, 0, 0); - p.add(white, new THREE.RingGeometry(4.2, 4.35, 32), X, ly + 0.02, Z + pz, -Math.PI / 2); + p.add(white, new THREE.RingGeometry(4.2, 4.35, 64), X, ly + 0.02, Z + pz, -Math.PI / 2); for (const x of [-9, 9]) prop(p, "bleachers", X + x, Z + 10.2, Math.PI); // Floodlights at the corners. for (const sx of [-1, 1]) { for (const sz of [-1, 1]) { const x = X + sx * (pw / 2 + 4); const z = Z + pz + sz * (pd / 2 + 2.2); - p.cyl(pole, 0.15, 0.25, 13, x, KERB, z, 6); - p.box(pole, 2.2, 0.2, 0.3, x, KERB + 13, z); - p.box(bulb, 2.0, 0.8, 0.25, x - sx * 0.1, KERB + 13.2, z - sz * 0.2, 0, -sz * 0.5); + // A tapered mast with a footing, and a frame of six lamps tipped at the pitch. + p.cyl(pole, 0.45, 0.5, 0.4, x, KERB, z, 16); + p.cyl(pole, 0.13, 0.24, 13, x, KERB + 0.4, z, 16); + p.box(pole, 2.4, 0.12, 0.12, x, KERB + 13.1, z); + p.box(pole, 2.4, 0.12, 0.12, x, KERB + 14.1, z); + for (const lx of [-0.8, 0, 0.8]) for (const ly of [13.35, 14.35]) { + p.box(pole, 0.62, 0.62, 0.3, x + lx, KERB + ly - 0.31, z + sz * 0.05, 0, -0.5 * sz); + p.box(bulb, 0.5, 0.5, 0.06, x + lx, KERB + ly - 0.25, z - sz * 0.13, 0, -0.5 * sz); + } } } for (let i = 0; i < 8; i++) tree(p, X + (r() < 0.5 ? -1 : 1) * (28 + r() * 3), Z + (r() - 0.5) * (D - 4), 0.7 + r() * 0.3, k.seed + i, KERB); From 94676322a8b68f1de8e3252a789389f0fc66f931 Mon Sep 17 00:00:00 2001 From: Sagyam Thapa Date: Sat, 7 Nov 2026 11:44:24 +0545 Subject: [PATCH 2/2] City: realistic models only, no low-poly kit Delete the low-poly kit (city-kit.glb, city_kit.py, kit.ts), the window atlas it used (textures.ts; the particle sprite moves to fx.ts), and every fallback to it: kit buildings and yards, kit trees, cars, people, crane, scaffold, rubble, bridge, street lamps, fences and the flat-colour stand-ins for lawns and streets. - The app creates the city only once the model pack is whole; until then the HUD shows the download. It starts the city in place, no reload. - loadReal loads every model or throws, so a missing model or a GPU without BC7 shows "Skyline unavailable" instead of a half-drawn city. The viewers (proto, town) still skip missing ones. - STYLES drops the kit-only round office and glass, twist and TV towers; a test checks every look the plan can produce has a model. - The crane's anchors move into models.ts (CRANE). Co-Authored-By: Claude Opus 5.5 --- docs/APP.md | 18 +- docs/DEVELOPMENT.md | 1 - ui/.gitignore | 3 +- ui/blender/city_kit.py | 2545 ----------------------------------- ui/blender/real/bridge.py | 5 +- ui/blender/real/build.py | 3 +- ui/blender/real/civic.py | 10 +- ui/blender/real/street.py | 3 +- ui/blender/real/trees.py | 7 +- ui/blender/real/vehicles.py | 3 +- ui/package.json | 1 - ui/public/city-kit.glb | Bin 4757160 -> 0 bytes ui/scripts/pack.ts | 2 +- ui/src-tauri/src/models.rs | 4 +- ui/src/city/fx.ts | 18 +- ui/src/city/kit.ts | 52 - ui/src/city/land.ts | 54 +- ui/src/city/models.ts | 767 ++--------- ui/src/city/plan.test.ts | 15 + ui/src/city/plan.ts | 18 +- ui/src/city/real.ts | 41 +- ui/src/city/scene.ts | 119 +- ui/src/city/textures.ts | 178 --- ui/src/city/traffic.ts | 64 +- ui/src/main.ts | 65 +- ui/src/models.ts | 2 +- ui/src/proto/main.ts | 54 +- ui/src/proto/town.ts | 3 +- ui/src/style.css | 1 - 29 files changed, 342 insertions(+), 3714 deletions(-) delete mode 100644 ui/blender/city_kit.py delete mode 100644 ui/public/city-kit.glb delete mode 100644 ui/src/city/kit.ts delete mode 100644 ui/src/city/textures.ts diff --git a/docs/APP.md b/docs/APP.md index f2b5598..934bea0 100644 --- a/docs/APP.md +++ b/docs/APP.md @@ -35,9 +35,8 @@ A renderer failure only loses the picture: the HUD keeps working. | File | Role | |---|---| | `plan.ts` | The `World` as places: lots, blocks, parks. `PUBLIC` and `NEED_LOOKS` pick models for public buildings. Pure, tested | -| `models.ts` | Builds a building from kit or realistic pieces; construction sites, damage, ruins (`shell()`) | -| `kit.ts` | Loads the low-poly kit (`public/city-kit.glb`, from `blender/city_kit.py`), the fallback for anything missing | -| `real.ts` | Loads realistic models; `DEFS` (size, set-back, kit style taken over), `PROPS`, materials and shaders | +| `models.ts` | Builds buildings from model pieces, their yards, construction sites, damage, ruins (`shell()`), parks | +| `real.ts` | Loads the models, all or none; `DEFS` (size, set-back, the plan style drawn), `PROPS`, materials and shaders | | `scene.ts` | Sky, sun by local time, shadows, bloom, camera; carries the performance work below | | `terrain.ts`, `land.ts` | Hills, river, woods (instanced, with impostors from `impostor.ts`) | | `traffic.ts` | Cars and pedestrians | @@ -47,8 +46,10 @@ A renderer failure only loses the picture: the HUD keeps working. Each model is a Python module in `ui/blender/real/` on the shared `lib.py` (textures, geometry helpers, AO bake, export). `bun run models` writes the -git-ignored `ui/public/models/`. A model replaces a kit style; models of -the same kind and style are siblings and each building picks one by seed. +git-ignored `ui/public/models/`. They are all the city draws: every style +in `STYLES` needs a model (`plan.test.ts` checks), and a missing one stops +the city with an error. Models of the same kind and style are siblings and +each building picks one by seed. **Rules for every model**, so it stays cheap to draw: @@ -110,8 +111,9 @@ gravel, grass). Models ship as their own GitHub release, `models-` (a prerelease, never "latest"). `ui/src-tauri/models.json` lists each file's size and SHA-256 and is compiled into the app, which downloads into -`~/.local/share/deepwork/assets//`, refuses any mismatch, and draws the -kit until the pack is whole. The download is done by the app as the user, +`~/.local/share/deepwork/assets//`, refuses any mismatch, and shows +the HUD and the download, with no city, until the pack is whole. A GPU +without BC7 gets no city. The download is done by the app as the user, never by the daemon. `` hashes the file list, so unchanged models download nothing. The pack's glbs are gzipped (`pack.ts`); the loader inflates them, and reads a plain local build as it is. Publishing steps: [DEVELOPMENT.md](DEVELOPMENT.md#model-packs). @@ -170,7 +172,7 @@ Open items are in [ROADMAP.md](ROADMAP.md#rendering). - **3D city, generated assets.** A flat 2D skyline was tried and rejected: "nothing to be proud of, nothing to lose". Visuals must make loss hurt. -- **Realistic over low-poly**; the kit stays only as a fallback. +- **Realistic models only**, with no low-poly fallback: until the pack is there, no city. - American and European styles mixed; real-world sizes per model. - **Daylight from a warm sun and a sky hemisphere**, not a flat ambient: an ambient lights every face alike and flattened the models (`light()` in diff --git a/docs/DEVELOPMENT.md b/docs/DEVELOPMENT.md index cbe396b..98a9122 100644 --- a/docs/DEVELOPMENT.md +++ b/docs/DEVELOPMENT.md @@ -45,7 +45,6 @@ shadow filter; `&leaves=0` turns off the leaf pre-pass and backlight. In the con ### Models ```sh -bun run kit # low-poly kit -> public/city-kit.glb (committed) bun run models # every realistic model -> public/models/ (git-ignored, minutes) bun run models c1 --no-tex # one model, skip the shared texture library bun run textures # redo BC7 compression only (needs basisu) diff --git a/ui/.gitignore b/ui/.gitignore index 97aa848..72690ec 100644 --- a/ui/.gitignore +++ b/ui/.gitignore @@ -1,5 +1,4 @@ node_modules/ dist/ -# Generated by blender/real/build.py (bun run models); the app falls back to -# the low-poly kit without them +# Generated by blender/real/build.py (bun run models); the city needs them /public/models/ diff --git a/ui/blender/city_kit.py b/ui/blender/city_kit.py deleted file mode 100644 index 50daa1b..0000000 --- a/ui/blender/city_kit.py +++ /dev/null @@ -1,2545 +0,0 @@ -# Builds the city kit: modular building pieces and trees with baked ambient -# occlusion, exported as one glTF binary for the 3D city (ui/src/city/kit.ts). -# -# blender -b --factory-startup -P ui/blender/city_kit.py -- ui/public/city-kit.glb [--preview out.png] -# -# Conventions the app relies on: -# - One object per piece, at the origin. Blender +Z is up and the front faces -# -Y; in glTF / three.js that is +Y up and the front facing +Z. -# - Buildings are stacks: a ground piece, floor pieces (one storey each, open -# top and bottom but for a dark cap) and a roof piece. Footprints are the -# nominal sizes below; the app scales x / z to each building's lot. -# - Material names are roles (wall, trim, window, ...). The app picks the real -# material per building and damage, so colours here only serve the preview. -# - Each window pane maps to one cell of a CELLS x CELLS window atlas -# (TEXCOORD_0); the app shifts cells per floor so lit windows differ. -# - COLOR_0 is the baked ambient occlusion (linear, multiplied in). -# - Custom properties (glTF extras) are anchors in three.js coordinates. -import math -import random -import sys - -import bmesh -import bpy -from mathutils import Matrix, Vector -from mathutils.bvhtree import BVHTree - -argv = sys.argv[sys.argv.index("--") + 1 :] if "--" in sys.argv else [] -OUT = argv[0] if argv else "city-kit.glb" -PREVIEW = argv[argv.index("--preview") + 1] if "--preview" in argv else None - -CELLS = 32 -Z = Vector((0, 0, 1)) - -# Nominal footprints (W along x, D along y) and storey heights; keep in step -# with NOMINAL in kit.ts and shape() in plan.ts. -COTTAGE = (6.75, 6.25, 3.2) -SHOP = (8.75, 8.0, 3.4) -APT = (9.15, 9.15, 3.1) -OFFICE = (9.6, 9.6, 3.5) -LANDMARK = (10.4, 3.5) -LM_TIERS = (1.0, 0.78, 0.56) - -PREVIEW_COLORS = { - "wall": (0.82, 0.74, 0.62), "trim": (0.86, 0.84, 0.79), "stone": (0.6, 0.58, 0.54), - "window": (0.1, 0.14, 0.2), "glass": (0.16, 0.24, 0.32), "frame": (0.93, 0.93, 0.9), - "roof": (0.5, 0.2, 0.15), "deck": (0.3, 0.3, 0.31), "accent": (0.6, 0.14, 0.11), - "canvas": (0.92, 0.9, 0.84), "sign": (1.0, 0.75, 0.35), "board": (0.08, 0.08, 0.1), - "shopfront": (0.85, 0.7, 0.45), "lobby": (0.85, 0.78, 0.6), "crownlight": (1.0, 0.8, 0.45), - "door": (0.28, 0.16, 0.09), "metal": (0.5, 0.52, 0.55), "dark": (0.16, 0.15, 0.14), - "spandrel": (0.1, 0.12, 0.15), "gold": (0.85, 0.6, 0.2), "brick": (0.48, 0.22, 0.15), - "wood": (0.42, 0.27, 0.17), "leaf": (0.22, 0.42, 0.16), "bark": (0.28, 0.18, 0.11), - "paint": (0.95, 0.95, 0.9), "railglass": (0.28, 0.36, 0.42), "crane": (0.9, 0.65, 0.08), - "concrete": (0.6, 0.6, 0.58), "grate": (0.3, 0.31, 0.32), "birch": (0.88, 0.86, 0.82), - "blossom": (0.95, 0.65, 0.75), "led": (0.8, 0.9, 1.0), "body": (0.7, 0.1, 0.1), - "carglass": (0.08, 0.1, 0.13), "tyre": (0.05, 0.05, 0.05), "chrome": (0.8, 0.8, 0.82), - "headlight": (1, 0.95, 0.8), "taillight": (0.8, 0.05, 0.05), "taxisign": (1, 0.85, 0.2), - "steel": (0.25, 0.4, 0.35), "rock": (0.5, 0.48, 0.44), - "water": (0.25, 0.45, 0.55), - "skin": (0.8, 0.6, 0.45), "shirt": (0.2, 0.4, 0.7), "pants": (0.15, 0.15, 0.2), "hair": (0.15, 0.1, 0.05), -} -CELL_ROLES = {"window", "glass"} - - -class Mod: - """One kit piece under construction.""" - - def __init__(self, name, ground=False, ao=3.0): - self.name = name - self.ground = ground # occlusion sees a ground plane at z = 0 - self.ao = ao # occlusion ray length - self.bm = bmesh.new() - self.uv = self.bm.loops.layers.uv.verify() - self.roles = [] - self.extras = {} - self.r = random.Random(name) - MODS.append(self) - - def mi(self, role): - if role not in self.roles: - self.roles.append(role) - return self.roles.index(role) - - def anchor(self, key, p): - """A point for the app, converted to three.js axes.""" - self.extras[key] = [round(p[0], 3), round(p[2], 3), round(-p[1], 3)] - - def face(self, role, pts, out=None, cell=False, smooth=False): - f = self.bm.faces.new([self.bm.verts.new(p) for p in pts]) - f.material_index = self.mi(role) - f.smooth = smooth - f.normal_update() - if out is not None and f.normal.dot(Vector(out)) < 0: - f.normal_flip() - if cell: - self.cell(f) - return f - - def cell(self, f): - """Maps a pane onto a random cell of the window atlas, upright.""" - n = f.normal - right = Z.cross(n) - if right.length < 1e-6: - right = Vector((1, 0, 0)) - right.normalize() - up = n.cross(right) - us = [v.co.dot(right) for v in f.verts] - vs = [v.co.dot(up) for v in f.verts] - u0, u1, v0, v1 = min(us), max(us), min(vs), max(vs) - i, j = self.r.randrange(CELLS), self.r.randrange(CELLS) - for loop in f.loops: - a = (loop.vert.co.dot(right) - u0) / max(u1 - u0, 1e-6) - b = (loop.vert.co.dot(up) - v0) / max(v1 - v0, 1e-6) - loop[self.uv].uv = ((i + 0.04 + 0.92 * a) / CELLS, (j + 0.04 + 0.92 * b) / CELLS) - - def hexa(self, role, corner, skip="", bevel=0.0, smooth=False, cell=False): - """A six-sided solid from corner(xi, yi, zi). Faces: w/e (x), n/s (y), b/t (z).""" - vs = {} - for xi in (0, 1): - for yi in (0, 1): - for zi in (0, 1): - vs[xi, yi, zi] = self.bm.verts.new(corner(xi, yi, zi)) - c = sum((v.co for v in vs.values()), Vector()) / 8 - sides = { - "w": [(0, 0, 0), (0, 1, 0), (0, 1, 1), (0, 0, 1)], - "e": [(1, 0, 0), (1, 1, 0), (1, 1, 1), (1, 0, 1)], - "n": [(0, 0, 0), (1, 0, 0), (1, 0, 1), (0, 0, 1)], - "s": [(0, 1, 0), (1, 1, 0), (1, 1, 1), (0, 1, 1)], - "b": [(0, 0, 0), (1, 0, 0), (1, 1, 0), (0, 1, 0)], - "t": [(0, 0, 1), (1, 0, 1), (1, 1, 1), (0, 1, 1)], - } - faces = [] - for k, idx in sides.items(): - if k in skip: - continue - f = self.bm.faces.new([vs[i] for i in idx]) - f.material_index = self.mi(role) - f.smooth = smooth - f.normal_update() - if f.normal.dot(f.calc_center_median() - c) < 0: - f.normal_flip() - faces.append(f) - for v in vs.values(): - if not v.link_faces: - self.bm.verts.remove(v) - if bevel > 0: - edges = [e for e in {e for f in faces for e in f.edges} if len(e.link_faces) == 2] - bmesh.ops.bevel(self.bm, geom=edges, offset=bevel, segments=1, affect="EDGES", profile=0.5, clamp_overlap=True) - if cell: - for f in faces: - self.cell(f) - return faces - - def box(self, role, x0, y0, z0, x1, y1, z1, **kw): - return self.hexa(role, lambda a, b, c: ((x0, x1)[a], (y0, y1)[b], (z0, z1)[c]), **kw) - - def mbox(self, role, M, sx, sy, sz, **kw): - """A box of size sx, sy, sz centred on the origin, transformed by M.""" - return self.hexa(role, lambda a, b, c: M @ Vector(((a - 0.5) * sx, (b - 0.5) * sy, (c - 0.5) * sz)), **kw) - - def _faces_of(self, verts, role, smooth): - faces = {f for v in verts for f in v.link_faces} - for f in faces: - f.material_index = self.mi(role) - side = abs(f.normal.z) < 0.7 - f.smooth = smooth and side - if smooth: - for f in faces: - for e in f.edges: - if len(e.link_faces) == 2 and e.link_faces[0].smooth != e.link_faces[1].smooth: - e.smooth = False - return faces - - def cyl(self, role, x, y, z0, r0, r1, h, seg=10, smooth=True, M=None, jitter=0.0): - M = (M or Matrix()) @ Matrix.Translation((x, y, z0 + h / 2)) - verts = bmesh.ops.create_cone(self.bm, cap_ends=True, cap_tris=False, segments=seg, radius1=r0, radius2=r1, depth=h, matrix=M)["verts"] - for v in verts if jitter else (): - v.co += Vector((self.r.uniform(-1, 1), self.r.uniform(-1, 1), self.r.uniform(-0.6, 0.6))) * jitter - faces = self._faces_of(verts, role, smooth) - for f in faces: - f.normal_update() - return faces - - def strut(self, role, a, b, t=0.08): - """A square bar from a to b.""" - a, b = Vector(a), Vector(b) - d = (b - a).normalized() - u = d.orthogonal().normalized() - w = d.cross(u) - return self.hexa(role, lambda i, j, k: (a, b)[i] + u * ((j - 0.5) * t) + w * ((k - 0.5) * t)) - - def blob(self, role, c, s, sub=1, jitter=0.0): - M = Matrix.Translation(c) @ Matrix.Diagonal((*s, 1)) - verts = bmesh.ops.create_icosphere(self.bm, subdivisions=sub, radius=1.0, matrix=M)["verts"] - for v in verts: - v.co += Vector((self.r.uniform(-1, 1), self.r.uniform(-1, 1), self.r.uniform(-1, 1))) * jitter - faces = self._faces_of(verts, role, False) - for f in faces: - f.normal_update() - return faces - - -class Side: - """One side of a W x D footprint: u runs left to right seen from outside, - v up from z0, k outwards (negative is into the wall).""" - - def __init__(self, m, side, W, D, z0=0.0, at=(0.0, 0.0)): - self.m = m - o, self.u, self.n, self.L = { - "n": (Vector((-W / 2, -D / 2, 0)), Vector((1, 0, 0)), Vector((0, -1, 0)), W), - "e": (Vector((W / 2, -D / 2, 0)), Vector((0, 1, 0)), Vector((1, 0, 0)), D), - "s": (Vector((W / 2, D / 2, 0)), Vector((-1, 0, 0)), Vector((0, 1, 0)), W), - "w": (Vector((-W / 2, D / 2, 0)), Vector((0, -1, 0)), Vector((-1, 0, 0)), D), - }[side] - self.o = o + Z * z0 + Vector((at[0], at[1], 0)) - - def P(self, u, v, k=0.0): - return self.o + self.u * u + Z * v + self.n * k - - def box(self, role, u0, u1, v0, v1, k0, k1, skip="", bevel=0.0): - """Skip letters: w/e the u ends, n the face against the wall, s the front, b/t.""" - return self.m.hexa(role, lambda a, b, c: self.P((u0, u1)[a], (v0, v1)[c], (k0, k1)[b]), skip, bevel) - - def quad(self, role, u0, u1, v0, v1, k=0.0, cell=False): - return self.m.face(role, [self.P(u0, v0, k), self.P(u1, v0, k), self.P(u1, v1, k), self.P(u0, v1, k)], out=self.n, cell=cell) - - def wall(self, role, v0, v1, holes=(), u0=0.0, u1=None, k=0.0): - """A flat wall with rectangular holes (u0, u1, v0, v1, ...).""" - u1 = self.L if u1 is None else u1 - us = sorted({u0, u1, *[h[0] for h in holes], *[h[1] for h in holes]}) - vs = sorted({v0, v1, *[h[2] for h in holes], *[h[3] for h in holes]}) - for a, b in zip(us, us[1:]): - for c, d in zip(vs, vs[1:]): - uc, vc = (a + b) / 2, (c + d) / 2 - if any(h[0] < uc < h[1] and h[2] < vc < h[3] for h in holes): - continue - self.quad(role, a, b, c, d, k) - - def opening(self, h, depth, pane="window", reveal="wall"): - """Reveals into a hole and the pane at its back.""" - u0, u1, v0, v1 = h[:4] - P, d, m = self.P, -depth, self.m - m.face(reveal, [P(u0, v0), P(u1, v0), P(u1, v0, d), P(u0, v0, d)], out=Z) - m.face(reveal, [P(u0, v1), P(u1, v1), P(u1, v1, d), P(u0, v1, d)], out=-Z) - m.face(reveal, [P(u0, v0), P(u0, v1), P(u0, v1, d), P(u0, v0, d)], out=self.u) - m.face(reveal, [P(u1, v0), P(u1, v1), P(u1, v1, d), P(u1, v0, d)], out=-self.u) - if pane: - self.quad(pane, u0, u1, v0, v1, d, cell=pane in CELL_ROLES) - - -def spaced(L, n, w, margin=0.0): - step = (L - 2 * margin) / n - return [(margin + step * (i + 0.5) - w / 2, margin + step * (i + 0.5) + w / 2) for i in range(n)] - - -def punched(m, W, D, z0, H, layout, role="wall", depth=0.16, reveal="wall", sill="trim", lintel="trim", pane="window", at=(0.0, 0.0)): - """Four walls with punched openings: layout maps side -> holes - (u0, u1, v0, v1[, pane role]).""" - sides = {} - for side, holes in layout.items(): - sd = sides[side] = Side(m, side, W, D, z0, at) - sd.wall(role, 0, H, holes) - for h in holes: - p = h[4] if len(h) > 4 else pane - sd.opening(h, depth, pane=p, reveal=reveal) - if p not in CELL_ROLES: - continue - if sill and h[2] > 0.1: - sd.box(sill, h[0] - 0.1, h[1] + 0.1, h[2] - 0.09, h[2], 0, 0.13, skip="n") - if lintel: - sd.box(lintel, h[0] - 0.12, h[1] + 0.12, h[3], h[3] + 0.17, 0, 0.05, skip="n") - return sides - - -def band(m, W, D, z0, z1, out, role="trim", bevel=0.03): - m.box(role, -W / 2 - out, -D / 2 - out, z0, W / 2 + out, D / 2 + out, z1, bevel=bevel) - - -def ring(m, W, D, z0, z1, t, role="wall", out=0.0, bevel=0.0): - """A parapet: four walls t thick whose outer faces sit `out` past the footprint.""" - x, y = W / 2 + out, D / 2 + out - m.box(role, -x, -y, z0, x, -y + t, z1, bevel=bevel) - m.box(role, -x, y - t, z0, x, y, z1, bevel=bevel) - m.box(role, -x, -y + t, z0, -x + t, y - t, z1, bevel=bevel) - m.box(role, x - t, -y + t, z0, x, y - t, z1, bevel=bevel) - - -def cap(m, W, D, z): - """Dark top of a storey: seen only when a broken building ends there.""" - m.face("deck", [(-W / 2, -D / 2, z), (W / 2, -D / 2, z), (W / 2, D / 2, z), (-W / 2, D / 2, z)], out=Z) - - -def roof_deck(m, W, D, z, t=0.3): - m.box("deck", -W / 2 + t, -D / 2 + t, z - 0.1, W / 2 - t, D / 2 - t, z, skip="b") - - -def ac_unit(m, x, y, z, s=1.0): - m.box("metal", x - 0.7 * s, y - 0.55 * s, z, x + 0.7 * s, y + 0.55 * s, z + 0.9 * s, bevel=0.03) - m.cyl("dark", x, y, z + 0.9 * s, 0.38 * s, 0.38 * s, 0.06, seg=12, smooth=False) - - -def vent(m, x, y, z, h=0.9): - m.cyl("metal", x, y, z, 0.12, 0.12, h, seg=8) - m.cyl("metal", x, y, z + h, 0.2, 0.05, 0.18, seg=8) - - -# ---- cottages --------------------------------------------------------------- - - -def gable(m, W, D, rise, oe=0.4, og=0.3, t=0.16, axis="x", wall="wall", role="roof"): - """A gable roof on a W x D top at z = 0, ridge along `axis`.""" - if axis == "y": - W, D = D, W - sw = lambda x, y, z: Vector((y, x, z)) # noqa: E731 - else: - sw = lambda x, y, z: Vector((x, y, z)) # noqa: E731 - hd = D / 2 - slope = rise / hd - ze = -oe * slope - for s in (-1, 1): - n = Vector((0, s * slope, 1)).normalized() - - def corner(a, b, c, s=s, n=n): - x = (-W / 2 - og, W / 2 + og)[a] - p = Vector((x, s * (hd + oe), ze)) if b == 0 else Vector((x, 0, rise)) - if c == 0: - p = p - n * t - return sw(*p) - - m.hexa(role, corner) - for x in (-W / 2, W / 2): - m.face(wall, [sw(x, -hd, 0), sw(x, hd, 0), sw(x, 0, rise - 0.12)], out=sw(x, 0, 0)) - m.hexa("trim", lambda a, b, c: sw((-W / 2 - og - 0.02, W / 2 + og + 0.02)[a], (-0.16, 0.16)[b], (rise - 0.05, rise + 0.1)[c])) - # Barge boards along the gable edges. - for x in (-W / 2 - og, W / 2 + og): - for s in (-1, 1): - m.hexa( - "trim", - lambda a, b, c, x=x, s=s: sw( - x + (a - 0.5) * 0.08, - s * (hd + oe) * (1 - b), - (ze + (rise - ze) * b) - 0.28 + c * 0.3, - ), - ) - - -def hip(m, W, D, rise, o=0.38, t=0.18, role="roof"): - """A hipped roof (W >= D) on a top at z = 0.""" - hw, hd = W / 2 + o, D / 2 + o - slope = rise / (D / 2) - ze = -o * slope - r = max(0.0, W / 2 - D / 2) - E = [Vector(p) for p in [(-hw, -hd, ze), (hw, -hd, ze), (hw, hd, ze), (-hw, hd, ze)]] - R0, R1 = Vector((-r, 0, rise)), Vector((r, 0, rise)) - below = Vector((0, 0, ze - 2)) - for pts in ([E[0], E[1], R1, R0], [E[1], E[2], R1], [E[2], E[3], R0, R1], [E[3], E[0], R0]): - c = sum(pts, Vector()) / len(pts) - m.face(role, pts, out=c - below) - lo = [e - Z * t for e in E] - for i in range(4): - a, b = E[i], E[(i + 1) % 4] - mid = (a + b) / 2 - m.face("trim", [a, b, lo[(i + 1) % 4], lo[i]], out=Vector((mid.x, mid.y, 0))) - m.face("trim", lo, out=-Z) - m.box("trim", -r - 0.12, -0.12, rise - 0.06, r + 0.12, 0.12, rise + 0.08) - - -def chimney(m, x, y, top): - m.box("brick", x - 0.36, y - 0.36, 0.2, x + 0.36, y + 0.36, top, skip="b") - m.box("trim", x - 0.46, y - 0.46, top, x + 0.46, y + 0.46, top + 0.14, bevel=0.02) - m.cyl("dark", x - 0.12, y, top + 0.14, 0.1, 0.1, 0.3, seg=8) - m.cyl("dark", x + 0.14, y, top + 0.14, 0.1, 0.1, 0.22, seg=8) - m.anchor("smoke", (x, y, top + 0.6)) - - -def cottage_body(v): - W, D, H = COTTAGE - m = Mod(f"cottage_body_{v}", ground=True) - m.box("stone", -W / 2 - 0.06, -D / 2 - 0.06, 0, W / 2 + 0.06, D / 2 + 0.06, 0.5, skip="b", bevel=0.02) - win = lambda c, w=1.05: (c - w / 2, c + w / 2, 1.05, 2.4) # noqa: E731 - dc = {"a": W / 2, "b": W * 0.68, "c": W / 2}[v] - door = (dc - 0.5, dc + 0.5, 0.5, 2.6, "door") - front = { - "a": [win(W * 0.2), door, win(W * 0.8)], - "b": [win(W * 0.17), win(W * 0.4), door, win(W * 0.88, 0.75)], - "c": [win(W * 0.18, 1.3), door, win(W * 0.82, 1.3)], - }[v] - side = [win(D / 2)] if v != "b" else [win(D * 0.3), win(D * 0.7)] - back = [win(W * 0.25), win(W * 0.75)] - sides = punched(m, W, D, 0, H, {"n": front, "e": side, "s": back, "w": side}, depth=0.14, reveal="frame", lintel=None) - n = sides["n"] - for h in front: - if len(h) > 4: - continue - if v == "a": # shutters - n.box("accent", h[0] - 0.42, h[0] - 0.05, h[2], h[3], 0, 0.05, skip="n") - n.box("accent", h[1] + 0.05, h[1] + 0.42, h[2], h[3], 0, 0.05, skip="n") - if v == "b": # flower boxes - n.box("wood", h[0] - 0.05, h[1] + 0.05, h[2] - 0.38, h[2] - 0.09, 0, 0.3, skip="n") - for i in range(3): - u = h[0] + (h[1] - h[0]) * (i + 0.5) / 3 - m.blob("leaf", n.P(u, h[2] - 0.02, 0.16), (0.2, 0.16, 0.14), sub=1, jitter=0.03) - # Door: steps, a fanlight frame, a canopy (a, b) or a porch (c). - n.box("stone", dc - 0.75, dc + 0.75, 0, 0.25, 0, 0.95, skip="n") - n.box("stone", dc - 0.75, dc + 0.75, 0.25, 0.5, 0, 0.5, skip="n") - n.box("frame", dc - 0.62, dc + 0.62, 2.6, 2.75, 0, 0.08, skip="n") - if v == "c": - u0, u1 = W * 0.22, W * 0.78 - n.box("wood", u0, u1, 0.38, 0.5, 0, 1.9, skip="n") - for u in (u0 + 0.1, u1 - 0.1): - n.box("frame", u - 0.09, u + 0.09, 0.5, 2.85, 1.7, 1.88) - n.box("frame", u0, u1, 2.85, 2.95, 1.7, 1.9, skip="n") - n.m.hexa("roof", lambda a, b, c: n.P((u0 - 0.2, u1 + 0.2)[a], (3.15, 2.85)[b] + c * 0.12, (0, 2.1)[b])) - else: - n.box("trim", dc - 0.85, dc + 0.85, 2.82, 2.94, 0, 0.75, skip="n", bevel=0.02) - for u in (dc - 0.7, dc + 0.7): - n.box("trim", u - 0.05, u + 0.05, 2.45, 2.82, 0, 0.5, skip="n") - band(m, W, D, H - 0.34, H - 0.12, 0.06, "trim", bevel=0.0) - cap(m, W, D, H) - - -def cottage_roof(v): - W, D, _ = COTTAGE - m = Mod(f"cottage_roof_{v}") - if v == "a": - gable(m, W, D, 2.5, axis="x") - chimney(m, W * 0.24, D * 0.16, 2.9) - elif v == "b": - hip(m, W, D, 2.2) - chimney(m, -W * 0.22, -D * 0.12, 2.6) - else: - gable(m, W, D, 2.7, oe=0.35, og=0.45, axis="y") - # A round-ish attic window in the front gable. - sd = Side(m, "n", W, D) - c = W / 2 - sd.box("frame", c - 0.45, c + 0.45, 0.75, 1.65, 0, 0.06) - sd.quad("window", c - 0.33, c + 0.33, 0.87, 1.53, 0.065, cell=True) - chimney(m, -W * 0.28, D * 0.2, 3.0) - return m - - -# ---- shops ------------------------------------------------------------------ - -GLYPHS = [ - "111101111101101", "110101110101110", "111100100100111", "110101101101110", "111100110100111", - "111100110100100", "111100101101111", "101101111101101", "111010010010111", "100100100100111", - "101111111101101", "111101101101111", "111101111100100", "111101111110101", "111100111001111", - "111010010010010", "101101101101111", "101101101101010", "101101111111101", "101101010101101", -] - - -def lettering(m, sd, uc, vc, k, n, px=0.075): - """A row of n block letters centred on (uc, vc), glowing at night.""" - width = n * 4 * px - px - for i in range(n): - g = GLYPHS[m.r.randrange(len(GLYPHS))] - u0 = uc - width / 2 + i * 4 * px - for row in range(5): - bits = g[row * 3 : row * 3 + 3] - col = 0 - while col < 3: - if bits[col] == "1": - end = col - while end + 1 < 3 and bits[end + 1] == "1": - end += 1 - v1 = vc + 2.5 * px - row * px - sd.box("sign", u0 + col * px, u0 + (end + 1) * px, v1 - px, v1, k, k + 0.05, skip="n") - col = end + 1 - else: - col += 1 - - -def awning(m, sd, u0, u1, top, drop, depth, stripes=True): - n = max(2, round((u1 - u0) / 0.45)) - for i in range(n): - a = u0 + (u1 - u0) * i / n - b = u0 + (u1 - u0) * (i + 1) / n - role = "accent" if i % 2 == 0 or not stripes else "canvas" - m.face(role, [sd.P(a, top), sd.P(b, top), sd.P(b, top - drop, depth), sd.P(a, top - drop, depth)], out=sd.n + Z) - sd.quad(role, a, b, top - drop - 0.28, top - drop, depth) - for u, s in ((u0, -1), (u1, 1)): - m.face("accent", [sd.P(u, top), sd.P(u, top - drop, depth), sd.P(u, top - drop - 0.28, depth)], out=sd.u * s) - - -def shop_ground(v): - W, D, H = SHOP - m = Mod(f"shop_ground_{v}", ground=True) - n = Side(m, "n", W, D) - if v == "a": - dc = W * 0.72 - holes = [(0.6, dc - 0.8, 0.55, 2.55, "shopfront"), (dc - 0.6, dc + 0.6, 0.0, 2.55, "door"), (dc + 0.8, W - 0.6, 0.55, 2.55, "shopfront")] - else: - dc = W / 2 - holes = [ - (0.6, dc - 1.3, 0.5, 2.55, "shopfront"), (dc - 1.1, dc - 0.2, 0, 2.55, "door"), - (dc + 0.2, dc + 1.1, 0, 2.55, "door"), (dc + 1.3, W - 0.6, 0.5, 2.55, "shopfront"), - ] - n.wall("wall", 0, H, holes) - for h in holes: - n.opening(h, 0.3, pane=h[4], reveal="metal") - if h[4] == "shopfront": - k = max(1, round((h[1] - h[0]) / 1.3)) - for i in range(1, k): - u = h[0] + (h[1] - h[0]) * i / k - n.box("metal", u - 0.04, u + 0.04, h[2], h[3], -0.3, -0.25, skip="n") - n.box("metal", h[0], h[1], 2.05, 2.11, -0.3, -0.25, skip="n") - n.box("stone", h[0] - 0.08, h[1] + 0.08, 0, h[2], 0, 0.06, skip="n") - else: - n.box("metal", h[0], h[1], 2.05, 2.11, -0.3, -0.25, skip="n") - for u0, u1 in ((0, 0.42), (W - 0.42, W)): - n.box("trim", u0, u1, 0, H, 0, 0.14, skip="n", bevel=0.02) - if v == "b": - n.box("trim", dc - 0.18, dc + 0.18, 2.55, H, 0, 0.14, skip="n") - # Fascia sign with lettering; awnings below it. - n.box("board", 0.45, W - 0.45, 2.72, 3.28, 0, 0.1, skip="n") - if v == "a": - lettering(m, n, W / 2, 3.0, 0.1, 6) - awning(m, n, 0.6, W - 0.6, 2.68, 0.55, 1.5) - else: - lettering(m, n, W * 0.27, 3.0, 0.1, 4) - lettering(m, n, W * 0.73, 3.0, 0.1, 4) - awning(m, n, 0.6, dc - 1.25, 2.68, 0.5, 1.3) - awning(m, n, dc + 1.25, W - 0.6, 2.68, 0.5, 1.3, stripes=False) - # A blade sign on the corner. - n.box("board", W - 0.3, W - 0.22, 1.6, 2.6, 0.15, 1.0) - n.box("sign", W - 0.33, W - 0.19, 1.75, 2.45, 0.3, 0.85) - sides = punched( - m, W, D, 0, H, - {"e": [(D * 0.6 - 0.5, D * 0.6 + 0.5, 1.4, 2.5)], "s": [(W * 0.3 - 0.5, W * 0.3 + 0.5, 0, 2.2, "door"), (W * 0.7 - 0.6, W * 0.7 + 0.6, 1.2, 2.5)], "w": [(D * 0.4 - 0.5, D * 0.4 + 0.5, 1.4, 2.5)]}, - depth=0.15, - ) - sides["s"].box("metal", W * 0.3 - 0.7, W * 0.3 + 0.7, 2.35, 2.45, 0, 0.7, skip="n") - m.box("stone", -W / 2 - 0.04, -D / 2 + 0.01, 0, W / 2 + 0.04, D / 2 + 0.04, 0.35, skip="bn") - cap(m, W, D, H) - - -def quoins(m, W, D, z0, H, role="trim", t=0.05): - """Alternating corner stones, wrapping each corner.""" - n = max(1, round(H / 0.8)) - h = H / n - for sx in (-1, 1): - for sy in (-1, 1): - x, y = sx * W / 2, sy * D / 2 - for i in range(n): - a, b = (0.6, 0.32) if i % 2 == 0 else (0.32, 0.6) - z1, z2 = z0 + i * h, z0 + (i + 1) * h - 0.05 - xs, ys = sorted((x - sx * a, x + sx * t)), sorted((y, y + sy * t)) - m.box(role, xs[0], ys[0], z1, xs[1], ys[1], z2) - xs, ys = sorted((x, x + sx * t)), sorted((y - sy * b, y)) - m.box(role, xs[0], ys[0], z1, xs[1], ys[1], z2) - - -def shop_floor(v): - W, D, H = SHOP - m = Mod(f"shop_floor_{v}") - if v == "a": - front = [(a, b, 0.75, 2.65) for a, b in spaced(W, 3, 1.2)] - else: - front = [] - for a, b in spaced(W, 2, 2.6): - front += [(a, a + 1.05, 0.75, 2.65), (b - 1.05, b, 0.75, 2.65)] - side = [(a, b, 0.8, 2.6) for a, b in spaced(D, 2, 1.1)] - back = [(a, b, 0.8, 2.6) for a, b in spaced(W, 3, 1.0)] - sides = punched(m, W, D, 0, H, {"n": front, "e": side, "s": back, "w": side}, depth=0.2) - band(m, W, D, 0, 0.2, 0.08) - if v == "a": - quoins(m, W, D, 0.2, H - 0.2) - else: - n = sides["n"] - for u in (0.2, W / 2, W - 0.2): - n.box("trim", u - 0.2, u + 0.2, 0.2, H, 0, 0.12, skip="nbt") - for h in front: # keystones - c = (h[0] + h[1]) / 2 - n.box("trim", c - 0.12, c + 0.12, h[3] + 0.05, h[3] + 0.32, 0, 0.09, skip="n") - cap(m, W, D, H) - - -def shop_roof(v): - W, D, _ = SHOP - m = Mod(f"shop_roof_{v}") - band(m, W, D, 0, 0.28, 0.12) - band(m, W, D, 0.28, 0.5, 0.34, bevel=0.05) - for side, L in (("n", W), ("e", D), ("s", W), ("w", D)): - sd = Side(m, side, W, D) - k = round(L / 0.7) - for i in range(k): - u = L * (i + 0.5) / k - sd.box("trim", u - 0.07, u + 0.07, 0.06, 0.28, 0.12, 0.3, skip="nt") - ring(m, W, D, 0.5, 1.2, 0.25, "wall") - ring(m, W, D, 1.2, 1.32, 0.36, "trim", out=0.06, bevel=0.02) - roof_deck(m, W, D, 0.62) - if v == "b": - sd = Side(m, "n", W, D) - c = W / 2 - sd.box("wall", c - 2.2, c + 2.2, 1.2, 2.0, -0.25, 0) - sd.box("trim", c - 2.3, c + 2.3, 2.0, 2.12, -0.3, 0.06, bevel=0.02) - tri = [sd.P(c - 2.3, 2.12, 0.04), sd.P(c + 2.3, 2.12, 0.04), sd.P(c, 2.9, 0.04)] - back = [p - sd.n * 0.3 for p in tri] - m.face("trim", tri, out=sd.n) - m.face("trim", back, out=-sd.n) - for a, b in ((0, 2), (2, 1)): - m.face("trim", [tri[a], tri[b], back[b], back[a]], out=Z + sd.u * (1 if a == 2 else -1)) - sd.box("board", c - 1.0, c + 1.0, 1.35, 1.85, 0, 0.04, skip="n") - ac_unit(m, W * 0.18, D * 0.2, 0.62) - vent(m, -W * 0.3, D * 0.25, 0.62) - else: - ac_unit(m, -W * 0.2, D * 0.1, 0.62) - ac_unit(m, W * 0.15, D * 0.22, 0.62, 0.8) - vent(m, W * 0.3, -D * 0.2, 0.62) - vent(m, W * 0.36, -D * 0.1, 0.62, 0.6) - m.box("metal", -W * 0.1, -D * 0.3, 0.62, W * 0.12, -D * 0.12, 0.85) - m.hexa("glass", lambda a, b, c: (-W * 0.08 + a * W * 0.18, -D * 0.28 + b * D * 0.14, 0.85 + c * (0.12 + 0.25 * b)), cell=False) - - -# ---- apartments ------------------------------------------------------------- - - -def apt_ground(v=None, wall="wall"): - W, D, H = APT - m = Mod("apt_ground" if v is None else f"apt_ground_{v}", ground=True) - dc = W / 2 - door = (dc - 0.85, dc + 0.85, 0, 2.45, "door") - win = lambda c: (c - 0.55, c + 0.55, 1.0, 2.4) # noqa: E731 - front = [win(W * 0.12), win(W * 0.3), door, win(W * 0.7), win(W * 0.88)] - sides = punched( - m, W, D, 0, H, - {"n": front, "e": [win(a + 0.55) for a, _ in spaced(D, 3, 1.1)], "s": [win(a + 0.55) for a, _ in spaced(W, 4, 1.1)], "w": [win(a + 0.55) for a, _ in spaced(D, 3, 1.1)]}, - role=wall, depth=0.18, lintel=None, - ) - n = sides["n"] - # Recessed entrance: deeper reveal in stone, glass door with a transom. - n.opening(door, 0.0, pane=None, reveal="stone") - n.box("stone", door[0] - 0.25, door[1] + 0.25, 0, 2.7, 0, 0.12, skip="n") - n.box("metal", door[0], door[1], 2.0, 2.06, -0.17, -0.12, skip="n") - n.box("metal", dc - 0.03, dc + 0.03, 0, 2.0, -0.17, -0.12, skip="n") - n.box("trim", dc - 1.5, dc + 1.5, 2.7, 2.9, 0, 1.6, skip="n", bevel=0.03) - n.box("shopfront", dc - 0.15, dc + 0.15, 2.55, 2.7, 1.2, 1.5) - n.box("stone", door[0] - 0.4, door[1] + 0.4, 0, 0.15, 0, 1.2, skip="n") - for side, sd in sides.items(): - if side == "n": - sd.box("stone", 0, door[0] - 0.25, 0, 0.75, 0, 0.06, skip="n") - sd.box("stone", door[1] + 0.25, sd.L, 0, 0.75, 0, 0.06, skip="n") - else: - sd.box("stone", 0, sd.L, 0, 0.75, 0, 0.06, skip="n") - band(m, W, D, H - 0.2, H, 0.07) - cap(m, W, D, H) - - -def balcony(sd, uc, w=2.6, depth=1.25, glass=False): - sd.box("trim", uc - w / 2, uc + w / 2, -0.02, 0.16, 0, depth, skip="n", bevel=0.03) - panel = "railglass" if glass else "trim" - t = 0.04 if glass else 0.1 - sd.box(panel, uc - w / 2, uc + w / 2, 0.16, 1.05, depth - t, depth, skip="b") - for u in (uc - w / 2, uc + w / 2 - t): - sd.box(panel, u, u + t, 0.16, 1.05, 0, depth - t, skip="bn") - if glass: - sd.box("metal", uc - w / 2 - 0.02, uc + w / 2 + 0.02, 1.05, 1.1, depth - 0.07, depth + 0.02, skip="") - - -def apt_floor(v): - W, D, H = APT - m = Mod(f"apt_floor_{v}") - win = lambda c, w=1.1: (c - w / 2, c + w / 2, 0.8, 2.4) # noqa: E731 - fr = lambda c: (c - 0.5, c + 0.5, 0.0, 2.4) # noqa: E731 - if v == "a": - front = [win(W * 0.1), fr(W * 0.33), fr(W * 0.67), win(W * 0.9)] - else: - front = [win(W * 0.12), (W * 0.36 - 0.5, W * 0.36 + 0.5, 0.25, 2.4), (W * 0.64 - 0.5, W * 0.64 + 0.5, 0.25, 2.4), win(W * 0.88)] - side = [win(a + 0.55) for a, _ in spaced(D, 3, 1.1)] - back = [win(a + 0.5, 1.0) for a, _ in spaced(W, 4, 1.0)] - sides = punched(m, W, D, 0, H, {"n": front, "e": side, "s": back, "w": side}, depth=0.16, lintel=None) - band(m, W, D, 0, 0.18, 0.05) - n = sides["n"] - if v == "a": - balcony(n, W * 0.3, w=2.8) - balcony(n, W * 0.7, w=2.8, glass=True) - else: - for h in front[1:3]: # Juliet balconies - n.box("metal", h[0] - 0.08, h[1] + 0.08, 1.0, 1.06, 0, 0.3, skip="n") - n.box("metal", h[0] - 0.08, h[1] + 0.08, 0.2, 0.26, 0, 0.3, skip="n") - for u in (h[0] - 0.08, h[1] + 0.02): - n.box("metal", u, u + 0.06, 0.2, 1.06, 0, 0.3, skip="nbt") - for u in (W * 0.22, W * 0.5, W * 0.78): - n.box("trim", u - 0.15, u + 0.15, 0.18, H, 0, 0.1, skip="nbt") - cap(m, W, D, H) - - -def stair_house(m, x, y, z, w=2.4, d=2.6, h=2.6): - m.box("wall", x - w / 2, y - d / 2, z, x + w / 2, y + d / 2, z + h, skip="b") - m.box("trim", x - w / 2 - 0.15, y - d / 2 - 0.15, z + h, x + w / 2 + 0.15, y + d / 2 + 0.15, z + h + 0.18, bevel=0.03) - sd = Side(m, "n", w, d, z) - sd.o = sd.o + Vector((x, y, 0)) - sd.quad("door", w / 2 - 0.45, w / 2 + 0.45, 0, 2.05, 0.01) - - -def apt_roof(v, wall="wall"): - W, D, _ = APT - m = Mod(f"apt_roof_{v}") - ring(m, W, D, 0, 0.9, 0.22, wall) - ring(m, W, D, 0.9, 1.02, 0.32, "trim", out=0.05, bevel=0.02) - roof_deck(m, W, D, 0.12) - if v in "ac": - x, y = W * 0.2, D * 0.12 - for lx, ly in ((-0.7, -0.7), (0.7, -0.7), (-0.7, 0.7), (0.7, 0.7)): - m.box("dark", x + lx - 0.07, y + ly - 0.07, 0.12, x + lx + 0.07, y + ly + 0.07, 1.4) - m.box("dark", x - 0.85, y - 0.85, 1.3, x + 0.85, y + 0.85, 1.42) - m.cyl("wood", x, y, 1.42, 1.1, 1.1, 1.9, seg=14) - for z in (1.8, 2.5, 3.1): - m.cyl("dark", x, y, z, 1.13, 1.13, 0.06, seg=14) - m.cyl("roof", x, y, 3.32, 1.2, 0.08, 0.75, seg=14, smooth=False) - stair_house(m, -W * 0.22, -D * 0.12, 0.12) - ac_unit(m, -W * 0.25, D * 0.28, 0.12, 0.8) - else: - stair_house(m, W * 0.24, D * 0.2, 0.12, w=2.2, d=2.4) - # Roof garden: planters with shrubs and a pergola. - for i, (x, y) in enumerate(((-W * 0.3, -D * 0.3), (-W * 0.05, -D * 0.3), (W * 0.2, -D * 0.3))): - m.box("wood", x - 0.9, y - 0.4, 0.12, x + 0.9, y + 0.4, 0.6, bevel=0.02) - for j in range(3): - m.blob("leaf", (x - 0.55 + j * 0.55, y, 0.75), (0.38, 0.34, 0.32), sub=1, jitter=0.06) - for x in (-W * 0.35, -W * 0.05): - for y in (D * 0.05, D * 0.3): - m.box("wood", x - 0.07, y - 0.07, 0.12, x + 0.07, y + 0.07, 2.3) - for i in range(6): - y = D * 0.02 + i * 0.4 - m.box("wood", -W * 0.38, y - 0.04, 2.3, -W * 0.02, y + 0.04, 2.42) - vent(m, W * 0.3, -D * 0.25, 0.12) - - -# ---- offices ---------------------------------------------------------------- - - -def curtain(sd, H, sill=0.65, cells=None): - L = sd.L - n = cells or max(2, round(L / 1.6)) - sd.quad("spandrel", 0, L, 0, sill) - for i in range(n): - sd.quad("glass", L * i / n, L * (i + 1) / n, sill, H, cell=True) - for i in range(n + 1): - u = L * i / n - w = 0.14 if i in (0, n) else 0.07 - sd.box("metal", max(0, u - w), min(L, u + w), 0, H, 0, 0.18, skip="nbt") - sd.box("metal", 0, L, sill - 0.05, sill + 0.03, 0, 0.1, skip="n") - - -def office_ground(): - W, D, H = OFFICE - m = Mod("office_ground", ground=True) - n = Side(m, "n", W, D) - hole = (0.7, W - 0.7, 0, H - 0.45) - n.wall("stone", 0, H, [hole]) - n.opening(hole, 0.45, pane=None, reveal="stone") - k = 6 - for i in range(k): - a = hole[0] + (hole[1] - hole[0]) * i / k - b = hole[0] + (hole[1] - hole[0]) * (i + 1) / k - n.quad("lobby", a, b, 0, hole[3], -0.45) - n.box("metal", a - 0.04, a + 0.04, 0, hole[3], -0.45, -0.38, skip="n") - n.box("metal", hole[0], hole[1], 2.4, 2.46, -0.45, -0.38, skip="n") - m.cyl("railglass", 0, -D / 2 + 0.45 - 0.5, 0, 0.95, 0.95, 2.4, seg=16) - m.cyl("metal", 0, -D / 2 + 0.45 - 0.5, 2.4, 1.0, 1.0, 0.15, seg=16) - n.box("metal", W / 2 - 2.4, W / 2 + 2.4, 2.75, 2.95, 0, 2.4, skip="n", bevel=0.03) - n.box("shopfront", W / 2 - 2.2, W / 2 + 2.2, 2.7, 2.75, 0.2, 2.2) - for side in ("e", "s", "w"): - sd = Side(m, side, W, D) - holes = [(a, b, 0.4, H - 0.6) for a, b in spaced(sd.L, 4, 1.1)] - sd.wall("stone", 0, H, holes) - for h in holes: - sd.opening(h, 0.25, pane="glass", reveal="stone") - for sx in (-1, 1): - for sy in (-1, 1): - m.box("stone", sx * W / 2 - 0.45, sy * D / 2 - 0.45, 0, sx * W / 2 + 0.45, sy * D / 2 + 0.45, H, skip="b", bevel=0.03) - band(m, W, D, H - 0.3, H, 0.1, "metal") - cap(m, W, D, H) - - -def office_floor(v): - W, D, H = OFFICE - m = Mod(f"office_floor_{v}") - for side in "nesw": - sd = Side(m, side, W, D) - if v == "a": - curtain(sd, H) - else: - L = sd.L - sd.box("wall", 0, L, 0, 1.0, 0, 0.12, skip="n") - sd.quad("wall", 0, L, H - 0.12, H, 0.0) - n = 4 - for i in range(n): - sd.quad("glass", L * i / n, L * (i + 1) / n, 1.0, H - 0.12, -0.12, cell=True) - sd.m.face("wall", [sd.P(0, H - 0.12), sd.P(L, H - 0.12), sd.P(L, H - 0.12, -0.12), sd.P(0, H - 0.12, -0.12)], out=-Z) - for i in range(n + 1): - u = L * i / n - sd.box("metal", max(0, u - 0.05), min(L, u + 0.05), 1.0, H - 0.12, -0.12, 0.0, skip="nbt") - for i in range(1, 2 * n): - u = L * i / (2 * n) - sd.box("metal", u - 0.04, u + 0.04, 1.0, H, 0.0, 0.5, skip="nb") - cap(m, W, D, H) - - -def office_setback(): - W, D, _ = OFFICE - m = Mod("office_setback") - m.box("metal", -W / 2 - 0.15, -D / 2 - 0.15, 0, W / 2 + 0.15, D / 2 + 0.15, 0.5, bevel=0.05) - ring(m, W, D, 0.5, 1.4, 0.05, "railglass", out=0.05) - ring(m, W, D, 1.4, 1.47, 0.09, "metal", out=0.07) - for x, y in ((-W * 0.4, -D * 0.4), (W * 0.4, -D * 0.4), (-W * 0.4, D * 0.4), (W * 0.4, D * 0.4)): - m.box("stone", x - 0.35, y - 0.35, 0.5, x + 0.35, y + 0.35, 0.95, bevel=0.02) - m.blob("leaf", (x, y, 1.25), (0.45, 0.45, 0.5), sub=1, jitter=0.06) - - -def office_roof(v): - W, D, _ = OFFICE - m = Mod(f"office_roof_{v}") - ring(m, W, D, 0, 1.0, 0.18, "metal") - roof_deck(m, W, D, 0.1, 0.18) - if v == "a": - # Plant room with louvres, an antenna and a dish. - w, d, h = W * 0.55, D * 0.5, 2.6 - m.box("wall", -w / 2, -d / 2, 0.1, w / 2, d / 2, 0.1 + h, skip="b") - for side in "nesw": - sd = Side(m, side, w, d, 0.1) - for i in range(6): - v0 = 0.6 + i * 0.28 - sd.box("dark", 0.3, sd.L - 0.3, v0, v0 + 0.16, 0, 0.06, skip="n") - m.box("metal", -w / 2 - 0.1, -d / 2 - 0.1, 0.1 + h, w / 2 + 0.1, d / 2 + 0.1, 0.3 + h, bevel=0.03) - x = w * 0.3 - m.cyl("metal", x, 0, 0.3 + h, 0.16, 0.06, 9, seg=8) - for z in (3.0, 5.5): - m.box("metal", x - 0.5, -0.04, 0.3 + h + z, x + 0.5, 0.04, 0.38 + h + z) - m.anchor("beacon", (x, 0, 0.3 + h + 9.2)) - dish = Matrix.Translation((-W * 0.3, D * 0.3, 1.0)) @ Matrix.Rotation(-0.7, 4, "X") - m.cyl("trim", 0, 0, 0, 0.75, 0.15, 0.4, seg=12, M=dish) - m.box("metal", -W * 0.3 - 0.06, D * 0.3 - 0.06, 0.1, -W * 0.3 + 0.06, D * 0.3 + 0.06, 1.0) - ac_unit(m, -W * 0.28, -D * 0.32, 0.1, 0.8) - else: - # Helipad on a raised deck, plant room behind. - m.box("metal", -W * 0.35, -D * 0.38, 0.1, W * 0.35, D * 0.18, 0.9) - m.cyl("deck", 0, -D * 0.1, 0.9, 3.0, 3.0, 0.12, seg=24, smooth=False) - m.cyl("paint", 0, -D * 0.1, 1.02, 2.75, 2.75, 0.02, seg=24, smooth=False) - m.cyl("deck", 0, -D * 0.1, 1.04, 2.55, 2.55, 0.02, seg=24, smooth=False) - for x0, x1, y0, y1 in ((-0.9, -0.6, -1.0, 1.0), (0.6, 0.9, -1.0, 1.0), (-0.6, 0.6, -0.15, 0.15)): - m.box("paint", x0, -D * 0.1 + y0, 1.06, x1, -D * 0.1 + y1, 1.08) - m.box("wall", -W * 0.3, D * 0.22, 0.1, W * 0.3, D * 0.45, 2.4, skip="b") - m.box("metal", -W * 0.32, D * 0.2, 2.4, W * 0.32, D * 0.47, 2.55) - m.anchor("beacon", (W * 0.3, D * 0.45, 2.85)) - for x in (-W * 0.15, W * 0.12): - ac_unit(m, x, D * 0.33, 2.55, 0.7) - - -# ---- landmark --------------------------------------------------------------- - - -def lm_bays(sd, H, n, cw=0.7, pw=0.32, sill=0.95, pane="glass"): - """Art deco bays: deep windows between piers, dark spandrels below.""" - L = sd.L - bay = (L - 2 * cw) / n - holes = [(cw + i * bay + pw / 2, cw + (i + 1) * bay - pw / 2, 0.0, H - 0.35) for i in range(n)] - sd.wall("wall", 0, H, holes) - for h in holes: - sd.opening(h, 0.28, pane=None, reveal="wall") - sd.quad("spandrel", h[0], h[1], 0, sill, -0.28) - sd.quad(pane, h[0], h[1], sill, h[3], -0.28, cell=True) - for i in range(1, n): - u = cw + i * bay - sd.box("trim", u - pw / 2, u + pw / 2, 0, H, 0, 0.2, skip="nbt") - sd.box("trim", 0, cw, 0, H, 0, 0.3, skip="nbt") - sd.box("trim", L - cw, L, 0, H, 0, 0.3, skip="nbt") - - -def lm_ground(): - S, H = LANDMARK - m = Mod("lm_ground", ground=True) - n = Side(m, "n", S, S) - portal = (S / 2 - 1.6, S / 2 + 1.6, 0, H - 0.25) - n.wall("stone", 0, H, [portal]) - n.opening(portal, 0.6, pane=None, reveal="gold") - n.quad("lobby", portal[0], portal[1], 0, portal[3], -0.6) - for i in range(1, 4): - u = portal[0] + (portal[1] - portal[0]) * i / 4 - n.box("gold", u - 0.05, u + 0.05, 0, portal[3], -0.6, -0.52, skip="n") - n.box("gold", portal[0] - 0.3, portal[1] + 0.3, portal[3], portal[3] + 0.25, 0, 0.12, skip="n") - for u in (portal[0] - 0.3, portal[1]): - n.box("gold", u, u + 0.3, 0, portal[3], 0, 0.12, skip="n") - for u in (1.2, S - 1.2): - n.box("stone", u - 0.6, u + 0.6, 0, 0.45, 0, 0.3, skip="n", bevel=0.03) - m.cyl("dark", 0, 0, 0, 0.05, 0.05, 1.0, seg=6, M=Matrix.Translation(n.P(u, 0.45, 0.15))) - n.box("shopfront", u - 0.18, u + 0.18, 1.45, 1.8, 0.0, 0.3) - for side in ("e", "s", "w"): - lm_bays(Side(m, side, S, S), H, 5, pane="glass") - for side in "nesw": - sd = Side(m, side, S, S) - sd.box("stone", 0, sd.L, 0, 1.0, 0, 0.12, skip="n") - band(m, S, S, H - 0.3, H, 0.18, "stone") - cap(m, S, S, H) - - -def lm_floor(t): - S0, H = LANDMARK - S = S0 * LM_TIERS[t - 1] - m = Mod(f"lm_floor_{t}") - for side in "nesw": - lm_bays(Side(m, side, S, S), H, (5, 4, 3)[t - 1]) - cap(m, S, S, H) - - -def finial(m, x, y, z, h=1.3, r=0.25): - m.box("gold", x - r, y - r, z, x + r, y + r, z + 0.25) - m.cyl("gold", x, y, z + 0.25, r * 0.9, 0.0, h, seg=4, smooth=False, M=Matrix.Translation((x, y, 0)) @ Matrix.Rotation(math.pi / 4, 4, "Z") @ Matrix.Translation((-x, -y, 0))) - - -def lm_ledge(t): - S0, _ = LANDMARK - S = S0 * LM_TIERS[t - 1] - m = Mod(f"lm_ledge_{t}") - band(m, S, S, -0.1, 0.35, 0.28, "trim", bevel=0.05) - band(m, S, S, 0.35, 0.55, 0.14, "gold", bevel=0.02) - ring(m, S, S, 0.55, 1.1, 0.3, "wall") - ring(m, S, S, 1.1, 1.22, 0.4, "trim", out=0.05, bevel=0.02) - roof_deck(m, S, S, 0.65) - for sx in (-1, 1): - for sy in (-1, 1): - finial(m, sx * (S / 2 - 0.15), sy * (S / 2 - 0.15), 1.22) - - -def lm_crown(): - S0, _ = LANDMARK - S = S0 * LM_TIERS[2] - m = Mod("lm_crown") - band(m, S, S, -0.1, 0.35, 0.25, "trim", bevel=0.05) - band(m, S, S, 0.35, 0.55, 0.12, "gold", bevel=0.02) - # Lantern storey: tall lit windows framed in gold. - a = S * 0.86 - for side in "nesw": - sd = Side(m, side, a, a, 0.55) - holes = [(u0, u1, 0.4, 2.9) for u0, u1 in spaced(a, 3, 0.8)] - sd.wall("wall", 0, 3.3, holes) - for h in holes: - sd.opening(h, 0.2, pane="crownlight", reveal="gold") - c = (h[0] + h[1]) / 2 - tri = [sd.P(h[0] - 0.1, h[3], 0.02), sd.P(h[1] + 0.1, h[3], 0.02), sd.P(c, h[3] + 0.32, 0.02)] - m.face("gold", tri, out=sd.n) - band(m, a, a, 3.85, 4.1, 0.12, "gold", bevel=0.02) - for sx in (-1, 1): - for sy in (-1, 1): - finial(m, sx * (a / 2 - 0.05), sy * (a / 2 - 0.05), 4.1, h=1.0, r=0.2) - # Stepped crown with sunburst chevrons. - b = a * 0.74 - m.box("wall", -b / 2, -b / 2, 4.1, b / 2, b / 2, 6.6, skip="b") - for side in "nesw": - sd = Side(m, side, b, b, 4.1) - c = b / 2 - for i, (w, h, role) in enumerate(((b * 0.48, 2.3, "gold"), (b * 0.34, 1.75, "board"), (b * 0.22, 1.2, "gold"), (b * 0.1, 0.7, "crownlight"))): - k = 0.02 + i * 0.015 - m.face(role, [sd.P(c - w, 0.05, k), sd.P(c + w, 0.05, k), sd.P(c, h + 0.05, k)], out=sd.n) - band(m, b, b, 6.6, 6.8, 0.1, "gold", bevel=0.02) - c3 = b * 0.66 - m.box("gold", -c3 / 2, -c3 / 2, 6.8, c3 / 2, c3 / 2, 8.2, skip="b", bevel=0.04) - rot = Matrix.Rotation(math.pi / 4, 4, "Z") - m.cyl("gold", 0, 0, 8.2, c3 * 0.62, 0.12, 6.5, seg=8, smooth=False, M=rot) - m.cyl("metal", 0, 0, 14.5, 0.14, 0.04, 9.0, seg=8) - m.blob("gold", (0, 0, 14.4), (0.3, 0.3, 0.3), sub=1) - m.anchor("beacon", (0, 0, 23.7)) - - -# ---- more styles -------------------------------------------------------------- - - -def cottage_body_d(): - """Stone-based cottage with a bay window.""" - W, D, H = COTTAGE - m = Mod("cottage_body_d", ground=True) - m.box("stone", -W / 2 - 0.06, -D / 2 - 0.06, 0, W / 2 + 0.06, D / 2 + 0.06, 0.5, skip="b", bevel=0.02) - win = lambda c, w=1.0: (c - w / 2, c + w / 2, 1.05, 2.4) # noqa: E731 - dc = W * 0.76 - front = [(dc - 0.5, dc + 0.5, 0.5, 2.6, "door")] - side = [win(D * 0.3), win(D * 0.7)] - back = [win(W * 0.2), win(W * 0.5), win(W * 0.8)] - sides = punched(m, W, D, 0, H, {"n": front, "e": side, "s": back, "w": side}, depth=0.14, reveal="frame", lintel=None) - # The bay: three glazed faces on a stone base, its own little roof. - bx, bw, bd = -W / 2 + W * 0.32, 2.3, 0.8 - at = (bx, -D / 2 - bd / 2) - m.box("stone", bx - bw / 2 - 0.05, -D / 2 - bd - 0.05, 0, bx + bw / 2 + 0.05, -D / 2, 0.55, skip="bs", bevel=0.02) - punched(m, bw, bd, 0.55, 2.2, {"n": [(0.2, bw - 0.2, 0.25, 1.9)], "e": [(0.15, bd - 0.15, 0.25, 1.9)], "w": [(0.15, bd - 0.15, 0.25, 1.9)]}, - depth=0.08, reveal="frame", lintel=None, sill=None, at=at) - m.box("trim", bx - bw / 2 - 0.12, -D / 2 - bd - 0.12, 2.75, bx + bw / 2 + 0.12, -D / 2, 2.87, bevel=0.02) - m.hexa("roof", lambda a, b, c: (bx + (a - 0.5) * (bw + 0.2 - c * 0.5 * b * 0), (-D / 2 - bd - 0.15, -D / 2)[b], 2.87 + c * 0.12 + b * 0.35)) - n = sides["n"] - n.box("stone", dc - 0.75, dc + 0.75, 0, 0.25, 0, 0.95, skip="n") - n.box("stone", dc - 0.75, dc + 0.75, 0.25, 0.5, 0, 0.5, skip="n") - n.box("trim", dc - 0.85, dc + 0.85, 2.82, 2.94, 0, 0.75, skip="n", bevel=0.02) - m.cyl("shopfront", 0, 0, 0, 0.09, 0.09, 0.25, seg=8, M=Matrix.Translation(n.P(dc + 0.75, 2.1, 0.12))) - band(m, W, D, H - 0.34, H - 0.12, 0.06, "trim", bevel=0.0) - cap(m, W, D, H) - - -def cottage_roof_d(): - """A gambrel roof with two dormers on the front.""" - W, D, _ = COTTAGE - m = Mod("cottage_roof_d") - rise, oe, og, t = 2.7, 0.35, 0.3, 0.16 - hd = D / 2 - ky, kz = 0.45 * hd, 0.72 * rise - s1 = kz / (hd - ky) - for s in (-1, 1): - for (y0, z0), (y1, z1) in (((hd + oe, -oe * s1), (ky, kz)), ((ky, kz), (0, rise))): - Y0, Y1 = s * y0, s * y1 - n = Vector((0, -(z1 - z0), Y1 - Y0)).normalized() - if n.z < 0: - n = -n - - def corner(a, b, c, Y0=Y0, Y1=Y1, z0=z0, z1=z1, n=n): - p = Vector(((-W / 2 - og, W / 2 + og)[a], (Y0, Y1)[b], (z0, z1)[b])) - return p - n * t if c == 0 else p - - m.hexa("roof", corner) - for x in (-W / 2, W / 2): - m.face("wall", [(x, -hd, 0), (x, -ky, kz), (x, 0, rise - 0.1), (x, ky, kz), (x, hd, 0)], out=(x, 0, 0)) - m.box("trim", -W / 2 - og - 0.02, -0.16, rise - 0.05, W / 2 + og + 0.02, 0.16, rise + 0.1) - for x in (-W * 0.22, W * 0.22): - yf = -hd * 0.78 - m.box("wall", x - 0.6, yf, 0.2, x + 0.6, -hd * 0.25, 1.55, skip="b") - m.box("frame", x - 0.42, yf - 0.05, 0.62, x + 0.42, yf, 1.4) - m.face("window", [(x - 0.32, yf - 0.06, 0.72), (x + 0.32, yf - 0.06, 0.72), (x + 0.32, yf - 0.06, 1.3), (x - 0.32, yf - 0.06, 1.3)], out=(0, -1, 0), cell=True) - m.face("wall", [(x - 0.6, yf, 1.55), (x + 0.6, yf, 1.55), (x, yf, 1.95)], out=(0, -1, 0)) - for sx in (-1, 1): - m.hexa("roof", lambda a, b, c, sx=sx, x=x, yf=yf: (x + sx * 0.78 * (1 - b), (yf - 0.18, -hd * 0.2)[a], 1.45 + 0.55 * b - 0.1 * (1 - c))) - chimney(m, W * 0.3, hd * 0.25, 3.1) - - -def fanlight(m, sd, u0, u1, v, ry): - c, rx = (u0 + u1) / 2, (u1 - u0) / 2 - for role, grow, k in (("trim", 0.12, 0.02), ("shopfront", 0.0, 0.04)): - pts = [sd.P(c + (rx + grow) * math.cos(math.pi * i / 10), v + (ry + grow) * math.sin(math.pi * i / 10), k) for i in range(11)] - m.face(role, pts, out=sd.n) - - -def umbrella_table(m, sd, u, k, role): - p = sd.P(u, 0, k) - m.cyl("metal", p.x, p.y, 0, 0.04, 0.04, 0.72, seg=6) - m.cyl("trim", p.x, p.y, 0.72, 0.42, 0.42, 0.04, seg=12, smooth=False) - m.cyl("metal", p.x, p.y, 0.76, 0.03, 0.03, 1.5, seg=6) - m.cyl(role, p.x, p.y, 2.0, 1.05, 0.05, 0.42, seg=8, smooth=False) - for du in (-0.6, 0.6): - q = sd.P(u + du, 0, k) - m.box("wood", q.x - 0.18, q.y - 0.18, 0.42, q.x + 0.18, q.y + 0.18, 0.47) - for lx in (-0.14, 0.14): - m.box("metal", q.x + lx - 0.02, q.y - 0.02, 0, q.x + lx + 0.02, q.y + 0.02, 0.42) - - -def shop_ground_c(): - """A corner café: arched windows and tables out front.""" - W, D, H = SHOP - m = Mod("shop_ground_c", ground=True) - n = Side(m, "n", W, D) - dc = W / 2 - holes = [(0.7, dc - 1.0, 0.45, 2.2, "shopfront"), (dc - 0.6, dc + 0.6, 0, 2.2, "door"), (dc + 1.0, W - 0.7, 0.45, 2.2, "shopfront")] - n.wall("wall", 0, H, holes) - for h in holes: - n.opening(h, 0.25, pane=h[4], reveal="trim") - fanlight(m, n, h[0], h[1], 2.2, 0.5) - if h[4] == "shopfront": - n.box("wood", h[0], h[1], 0.75, 0.8, -0.25, -0.2, skip="n") - n.box("board", 0.5, W - 0.5, 2.92, 3.32, 0, 0.08, skip="n") - lettering(m, n, W / 2, 3.12, 0.08, 5, px=0.065) - for u0, u1 in ((0, 0.4), (W - 0.4, W)): - n.box("trim", u0, u1, 0, H, 0, 0.14, skip="n", bevel=0.02) - for i, u in enumerate((W * 0.16, W * 0.35, W * 0.65, W * 0.84)): - umbrella_table(m, n, u, 1.25, "accent" if i % 2 == 0 else "canvas") - for u in (0.35, W - 0.35): - p = n.P(u, 0, 0.45) - m.box("wood", p.x - 0.3, p.y - 0.3, 0, p.x + 0.3, p.y + 0.3, 0.5, bevel=0.02) - m.blob("leaf", (p.x, p.y, 0.85), (0.38, 0.38, 0.45), sub=2, jitter=0.05) - punched( - m, W, D, 0, H, - {"e": [(D * 0.6 - 0.5, D * 0.6 + 0.5, 1.4, 2.5)], "s": [(W * 0.3 - 0.5, W * 0.3 + 0.5, 0, 2.2, "door"), (W * 0.7 - 0.6, W * 0.7 + 0.6, 1.2, 2.5)], "w": [(D * 0.4 - 0.5, D * 0.4 + 0.5, 1.4, 2.5)]}, - depth=0.15, - ) - m.box("stone", -W / 2 - 0.04, -D / 2 + 0.01, 0, W / 2 + 0.04, D / 2 + 0.04, 0.35, skip="bn") - cap(m, W, D, H) - - -def shop_floor_c(): - """Upper storey with an oriel window.""" - W, D, H = SHOP - m = Mod("shop_floor_c") - front = [(a, b, 0.75, 2.65) for a, b in ((W * 0.13 - 0.55, W * 0.13 + 0.55), (W * 0.87 - 0.55, W * 0.87 + 0.55))] - side = [(a, b, 0.8, 2.6) for a, b in spaced(D, 2, 1.1)] - back = [(a, b, 0.8, 2.6) for a, b in spaced(W, 3, 1.0)] - punched(m, W, D, 0, H, {"n": front, "e": side, "s": back, "w": side}, depth=0.2) - band(m, W, D, 0, 0.2, 0.08) - bw, bd = 3.0, 0.75 - at = (0, -D / 2 - bd / 2) - punched(m, bw, bd, 0.45, 2.5, {"n": [(0.3, 1.4, 0.3, 2.1), (1.6, 2.7, 0.3, 2.1)], "e": [(0.15, bd - 0.15, 0.3, 2.1)], "w": [(0.15, bd - 0.15, 0.3, 2.1)]}, - depth=0.1, sill=None, lintel=None, at=at) - m.hexa("trim", lambda a, b, c: ((a - 0.5) * (bw + 0.1 - (1 - c) * 0.6), (-D / 2 - bd - 0.05 + (1 - c) * 0.45, -D / 2)[b], 0.15 + c * 0.3)) - m.box("trim", -bw / 2 - 0.12, -D / 2 - bd - 0.12, 2.95, bw / 2 + 0.12, -D / 2, 3.1, bevel=0.03) - cap(m, W, D, H) - - -def apt_floor_c(): - """Brick walk-up storey with a fire escape.""" - W, D, H = APT - m = Mod("apt_floor_c") - win = lambda c, w=1.0: (c - w / 2, c + w / 2, 0.75, 2.4) # noqa: E731 - front = [win(W * f) for f in (0.13, 0.37, 0.63, 0.87)] - side = [win(a + 0.5) for a, _ in spaced(D, 3, 1.0)] - back = [win(a + 0.5) for a, _ in spaced(W, 4, 1.0)] - sides = punched(m, W, D, 0, H, {"n": front, "e": side, "s": back, "w": side}, role="brick", depth=0.18) - n = sides["n"] - u0, u1, k1 = W * 0.24, W * 0.76, 1.15 - n.box("grate", u0, u1, 0.02, 0.1, 0, k1, skip="n") - n.box("dark", u0, u1, 1.0, 1.05, k1 - 0.05, k1, skip="n") - for u in (u0, u1 - 0.05): - n.box("dark", u, u + 0.05, 1.0, 1.05, 0, k1, skip="n") - for u in (u0, (u0 + u1) / 2, u1 - 0.04): - n.box("dark", u, u + 0.04, 0.1, 1.0, k1 - 0.04, k1, skip="nbt") - n.m.hexa("grate", lambda a, b, c: n.P((W * 0.3, W * 0.68)[a], (0.1, H)[a] + c * 0.08, (0.25, 0.85)[b])) - for k in (0.25, 0.85): - m.strut("dark", n.P(W * 0.3, 0.9, k), n.P(W * 0.68, H + 0.8, k), 0.04) - cap(m, W, D, H) - - -def office_floor_c(): - """Concrete storey with deep punched windows.""" - W, D, H = OFFICE - m = Mod("office_floor_c") - for side in "nesw": - sd = Side(m, side, W, D) - holes = [(a, b, 0.75, H - 0.55) for a, b in spaced(sd.L, 5, 1.2)] - sd.wall("wall", 0, H, holes) - for h in holes: - sd.opening(h, 0.5, pane="glass", reveal="wall") - sd.box("wall", 0, sd.L, H - 0.3, H, 0, 0.25, skip="n") - cap(m, W, D, H) - - -def lm2_ground(): - S, H = LANDMARK - m = Mod("lm2_ground", ground=True) - inset = 0.7 - for side in "nesw": - sd = Side(m, side, S - 2 * inset, S - 2 * inset) - L, n = sd.L, 6 - for i in range(n): - sd.quad("lobby", L * i / n, L * (i + 1) / n, 0, H - 0.4) - for i in range(n + 1): - sd.box("metal", max(0, L * i / n - 0.05), min(L, L * i / n + 0.05), 0, H - 0.4, 0, 0.1, skip="nbt") - for sx in (-1, 1): - for sy in (-1, 1): - x, y = sx * (S / 2 - 0.35), sy * (S / 2 - 0.35) - m.box("metal", x - 0.35, y - 0.35, 0, x + 0.35, y + 0.35, H, skip="b", bevel=0.04) - m.box("metal", -S / 2, -S / 2, H - 0.45, S / 2, S / 2, H, bevel=0.03) - Side(m, "n", S, S).box("metal", S / 2 - 3, S / 2 + 3, 2.6, 2.8, 0, 2.6, skip="n", bevel=0.03) - Side(m, "n", S, S).box("led", S / 2 - 2.8, S / 2 + 2.8, 2.56, 2.6, 0.2, 2.4) - m.box("deck", -S / 2 + inset, -S / 2 + inset, H - 0.5, S / 2 - inset, S / 2 - inset, H - 0.45, skip="t") - - -def lm2_floor(t): - S0, H = LANDMARK - S = S0 * LM_TIERS[t - 1] - m = Mod(f"lm2_floor_{t}") - n = (6, 5, 4)[t - 1] - for side in "nesw": - sd = Side(m, side, S, S) - L = sd.L - sd.quad("spandrel", 0, L, 0, 0.45) - for i in range(n): - sd.quad("glass", L * i / n, L * (i + 1) / n, 0.45, H, cell=True) - for i in range(1, n): - u = L * i / n - sd.box("metal", u - 0.04, u + 0.04, 0, H, 0, 0.42, skip="nbt") - sd.box("metal", 0, 0.2, 0, H, 0, 0.2, skip="nbt") - sd.box("metal", L - 0.2, L, 0, H, 0, 0.2, skip="nbt") - band(m, S, S, 0, 0.12, 0.06, "metal", bevel=0.0) - cap(m, S, S, H) - - -def lm2_ledge(t): - S0, _ = LANDMARK - S = S0 * LM_TIERS[t - 1] - m = Mod(f"lm2_ledge_{t}") - band(m, S, S, -0.1, 0.35, 0.15, "metal", bevel=0.03) - ring(m, S, S, 0.35, 1.3, 0.05, "railglass", out=0.1) - ring(m, S, S, 1.3, 1.36, 0.09, "metal", out=0.12) - roof_deck(m, S, S, 0.45, 0.05) - for x, y in ((-1, -1), (1, -1), (-1, 1), (1, 1), (0, -1), (0, 1), (-1, 0), (1, 0)): - px, py = x * (S / 2 - 0.6), y * (S / 2 - 0.6) - m.box("concrete", px - 0.32, py - 0.32, 0.45, px + 0.32, py + 0.32, 0.85, bevel=0.02) - m.cyl("bark", px, py, 0.85, 0.06, 0.04, 0.6, seg=5) - m.blob("leaf", (px, py, 1.65), (0.5, 0.5, 0.6), sub=2, jitter=0.07) - - -def lm2_crown(): - S0, _ = LANDMARK - S = S0 * LM_TIERS[2] - m = Mod("lm2_crown") - band(m, S, S, -0.1, 0.3, 0.12, "metal", bevel=0.03) - m.box("led", -S / 2 - 0.03, -S / 2 - 0.03, 0.3, S / 2 + 0.03, S / 2 + 0.03, 0.55) - a, b, h = S, S * 0.32, 7.5 - m.hexa("railglass", lambda i, j, k: ((i - 0.5) * (a, b)[k], (j - 0.5) * (a, b)[k], 0.55 + k * h), skip="b") - for sx in (-1, 1): - for sy in (-1, 1): - m.strut("metal", (sx * a / 2, sy * a / 2, 0.55), (sx * b / 2, sy * b / 2, 0.55 + h), 0.14) - for z in (2.5, 4.6): - k = (z - 0.55) / h - w = a + (b - a) * k + 0.06 - m.box("led", -w / 2, -w / 2, z, w / 2, w / 2, z + 0.12) - m.box("metal", -b / 2 - 0.1, -b / 2 - 0.1, 0.55 + h, b / 2 + 0.1, b / 2 + 0.1, 0.85 + h, bevel=0.03) - m.cyl("metal", 0, 0, 0.85 + h, 0.22, 0.04, 11.0, seg=8) - m.cyl("led", 0, 0, 3.5 + h, 0.2, 0.2, 0.25, seg=8) - m.anchor("beacon", (0, 0, 0.85 + h + 11.3)) - - -# ---- skyline styles ----------------------------------------------------------- -# Building types picked per building by `style` in plan.ts: a modern house and -# an A-frame cabin (grade 0), a diner and a brick factory (grade 1), a row of -# brownstone townhouses (grade 2), a round glass office tower (grade 3), and a -# twisting supertall and a TV tower (grade 4). Park furniture follows. - -FACTORY_H = 5.0 -TAU = 2 * math.pi - - -def around(r, a, z): - return (r * math.cos(a), r * math.sin(a), z) - - -def ringwall(m, role, r0, r1, z0, z1, seg, cell=False, a0=0.0): - """Outward faces of a (tapered) cylinder, one quad per segment.""" - for i in range(seg): - a, b = a0 + TAU * i / seg, a0 + TAU * (i + 1) / seg - mid = (a + b) / 2 - m.face(role, [around(r0, a, z0), around(r0, b, z0), around(r1, b, z1), around(r1, a, z1)], - out=(math.cos(mid), math.sin(mid), (r0 - r1) / max(z1 - z0, 1e-6)), cell=cell) - - -def disk(m, role, r, z, seg, up=True): - m.face(role, [around(r, TAU * i / seg, z) for i in range(seg)], out=Z if up else -Z) - - -def annulus(m, role, r0, r1, z, seg, up=True): - for i in range(seg): - a, b = TAU * i / seg, TAU * (i + 1) / seg - m.face(role, [around(r0, a, z), around(r0, b, z), around(r1, b, z), around(r1, a, z)], out=Z if up else -Z) - - -def mullions(m, role, r, z0, z1, seg, t=0.08, out=0.06, a0=0.0, every=1): - for i in range(0, seg, every): - a = a0 + TAU * i / seg - c = Matrix.Translation(around(r + out / 2, a, (z0 + z1) / 2)) @ Matrix.Rotation(a, 4, "Z") - m.mbox(role, c, out + 0.04, t, z1 - z0) - - -def octagon(a, c): - """A square of half-size a with corners cut by c, counter-clockwise.""" - return [(a - c, -a), (a, -a + c), (a, a - c), (a - c, a), (-a + c, a), (-a, a - c), (-a, -a + c), (-a + c, -a)] - - -def prism_sides(m, role, pts, z0, z1, cells=0, grow=0.0): - """Side faces of a prism on a convex outline; cells > 0 splits each face into panes.""" - n = len(pts) - for i in range(n): - (x0, y0), (x1, y1) = pts[i], pts[(i + 1) % n] - nx, ny = y1 - y0, -(x1 - x0) - ln = math.hypot(nx, ny) - nx, ny = nx / ln, ny / ln - k = max(1, round(math.hypot(x1 - x0, y1 - y0) / cells)) if cells else 1 - for j in range(k): - ta, tb = j / k, (j + 1) / k - pa = (x0 + (x1 - x0) * ta + nx * grow, y0 + (y1 - y0) * ta + ny * grow) - pb = (x0 + (x1 - x0) * tb + nx * grow, y0 + (y1 - y0) * tb + ny * grow) - m.face(role, [(*pa, z0), (*pb, z0), (*pb, z1), (*pa, z1)], out=(nx, ny, 0), cell=bool(cells) and role in CELL_ROLES) - - -def prism(m, role, pts, z0, z1, grow=0.0, top=True, bottom=False): - prism_sides(m, role, pts, z0, z1, grow=grow) - g = [(x * (1 + grow / max(abs(x), abs(y), 1e-6)), y * (1 + grow / max(abs(x), abs(y), 1e-6))) for x, y in pts] - if top: - m.face(role, [(x, y, z1) for x, y in g], out=Z) - if bottom: - m.face(role, [(x, y, z0) for x, y in g], out=-Z) - - -# Grade 0: a modern house with a garage, and an A-frame cabin. - - -def cottage_body_e(): - W, D, H = COTTAGE - m = Mod("cottage_body_e", ground=True) - m.box("concrete", -W / 2 - 0.05, -D / 2 - 0.05, 0, W / 2 + 0.05, D / 2 + 0.05, 0.3, skip="b") - g0 = W * 0.64 - front = [(0.35, 2.9, 0.35, 2.9, "glass"), (3.25, 4.15, 0.3, 2.6, "door"), (g0, W - 0.3, 0.3, 2.55, "metal")] - sides = punched( - m, W, D, 0, H, - {"n": front, "e": [(D * 0.55, D - 0.5, 1.2, 2.4)], "s": [(0.4, W * 0.55, 0.3, 2.9, "glass"), (W * 0.7, W - 0.6, 1.3, 2.5)], "w": [(0.6, D * 0.45, 0.35, 2.9, "glass")]}, - depth=0.12, reveal="dark", sill=None, lintel=None, - ) - n = sides["n"] - # Garage door panels and a timber screen in front of the big window. - for i in range(1, 5): - v = 0.3 + 2.25 * i / 5 - n.box("dark", g0, W - 0.3, v - 0.03, v + 0.02, -0.12, -0.1, skip="n") - for i in range(8): - u = 0.45 + i * 0.3 - n.box("wood", u, u + 0.08, 0.35, 2.9, 0.25, 0.33) - n.box("wood", 0.35, 2.9, 2.9, 3.0, 0.0, 0.34, skip="n") - n.box("wood", 3.0, 4.4, 0.3, H, 0.0, 0.06, skip="nbt") - n.box("concrete", 3.0, 4.4, 0.0, 0.3, 0.0, 1.1, skip="n") - n.box("concrete", g0 - 0.1, W - 0.2, 0.0, 0.08, 0.0, 2.4, skip="n") - m.cyl("shopfront", 0, 0, 0, 0.07, 0.07, 0.3, seg=8, M=Matrix.Translation(n.P(4.3, 2.3, 0.1))) - cap(m, W, D, H) - - -def cottage_roof_e(): - W, D, _ = COTTAGE - m = Mod("cottage_roof_e") - # Thin white slab cantilevered over the entrance; a timber-clad box on top. - m.box("paint", -W / 2 - 0.25, -D / 2 - 1.3, 0, W / 2 + 0.25, D / 2 + 0.25, 0.32, bevel=0.02) - w, d = W * 0.58, D * 0.72 - x0 = -W / 2 + 0.2 - m.box("wood", x0, -D / 2 + 0.3, 0.32, x0 + w, -D / 2 + 0.3 + d, 2.9, skip="b") - sd = Side(m, "n", w, d, 0.32, at=(x0 + w / 2, -D / 2 + 0.3 + d / 2)) - sd.quad("glass", 0.3, w - 0.3, 0.7, 2.3, 0.01, cell=True) - sd.box("dark", 0.25, w - 0.25, 0.62, 0.7, 0, 0.06) - sd = Side(m, "e", w, d, 0.32, at=(x0 + w / 2, -D / 2 + 0.3 + d / 2)) - sd.quad("glass", 0.4, d * 0.55, 0.7, 2.3, 0.01, cell=True) - m.box("paint", x0 - 0.15, -D / 2 + 0.15, 2.9, x0 + w + 0.15, -D / 2 + 0.45 + d, 3.12, bevel=0.02) - # Solar panels on the lower roof. - for i in range(3): - x = W * 0.12 + i * 0.95 - M = Matrix.Translation((x, D * 0.1, 0.62)) @ Matrix.Rotation(0.45, 4, "X") - m.mbox("spandrel", M, 0.85, 1.6, 0.05) - m.box("metal", x - 0.04, D * 0.1 + 0.4, 0.32, x + 0.04, D * 0.1 + 0.48, 0.85) - ring(m, W * 0.42, D, 0.32, 0.5, 0.06, "paint", out=0.0) - return m - - -def cottage_body_f(): - W, D, H = COTTAGE - m = Mod("cottage_body_f", ground=True) - m.box("stone", -W / 2 - 0.05, -D / 2 - 0.05, 0, W / 2 + 0.05, D / 2 + 0.05, 0.45, skip="b", bevel=0.02) - dc = W / 2 - front = [(0.5, dc - 0.7, 0.45, 2.9, "glass"), (dc - 0.55, dc + 0.55, 0.45, 2.7, "door"), (dc + 0.7, W - 0.5, 0.45, 2.9, "glass")] - side = [(D * 0.3 - 0.5, D * 0.3 + 0.5, 1.1, 2.2), (D * 0.7 - 0.5, D * 0.7 + 0.5, 1.1, 2.2)] - sides = punched(m, W, D, 0, H, {"n": front, "e": side, "s": [(W / 2 - 0.5, W / 2 + 0.5, 1.1, 2.3)], "w": side}, role="wood", depth=0.1, reveal="frame", lintel=None) - # Log courses. - for sd in sides.values(): - for i in range(1, 9): - v = 0.45 + i * 0.32 - sd.box("bark", 0, sd.L, v - 0.03, v, 0, 0.04, skip="n") - # A deck across the front with a rail. - n = sides["n"] - n.box("wood", -0.3, W + 0.3, 0.3, 0.45, 0, 1.6, skip="n") - for u in (-0.2, W / 4, W * 3 / 4, W + 0.2): - n.box("wood", u - 0.06, u + 0.06, 0.45, 1.4, 1.42, 1.54) - n.box("wood", -0.25, dc - 0.8, 1.3, 1.4, 1.42, 1.54) - n.box("wood", dc + 0.8, W + 0.25, 1.3, 1.4, 1.42, 1.54) - n.box("wood", dc - 0.7, dc + 0.7, 0.0, 0.15, 1.6, 2.2) - cap(m, W, D, H) - - -def cottage_roof_f(): - """A steep A-frame whose eaves come down to the deck, glazed gable.""" - W, D, _ = COTTAGE - m = Mod("cottage_roof_f") - rise = 4.6 - gable(m, W, D, rise, oe=1.25, og=0.55, t=0.22, axis="y", wall="wood") - sd = Side(m, "n", W, D) - c = W / 2 - tri = lambda k, s: [sd.P(c - s * W / 2, 0.15, k), sd.P(c + s * W / 2, 0.15, k), sd.P(c, 0.15 + s * (rise - 0.4), k)] # noqa: E731 - m.face("glass", tri(0.03, 0.78), out=sd.n, cell=True) - for u in (c - 0.9, c, c + 0.9): - h = (rise - 0.4) * (1 - abs(u - c) / (W / 2 * 0.78)) + 0.15 - sd.box("frame", u - 0.05, u + 0.05, 0.15, h, 0.03, 0.09) - sd.box("frame", c - W / 2 * 0.62, c + W / 2 * 0.62, 1.3, 1.38, 0.03, 0.09) - m.cyl("dark", W * 0.18, D * 0.2, 0.8, 0.14, 0.14, 3.6, seg=8) - m.cyl("dark", W * 0.18, D * 0.2, 4.4, 0.24, 0.05, 0.25, seg=8) - m.anchor("smoke", (W * 0.18, D * 0.2, 4.9)) - return m - - -# Grade 1: a diner and a brick factory. - - -def shop_ground_d(): - W, D, H = SHOP - m = Mod("shop_ground_d", ground=True) - dc = W * 0.3 - front = [(0.3, dc - 0.7, 0.95, 2.45, "shopfront"), (dc - 0.6, dc + 0.6, 0.0, 2.45, "door"), (dc + 0.7, W - 0.3, 0.95, 2.45, "shopfront")] - sides = punched( - m, W, D, 0, H, - {"n": front, "e": [(0.3, D * 0.62, 0.95, 2.45, "shopfront")], "s": [(W * 0.7 - 0.5, W * 0.7 + 0.5, 0, 2.2, "door"), (W * 0.3 - 0.6, W * 0.3 + 0.6, 1.3, 2.3)], "w": [(D * 0.5 - 0.5, D * 0.5 + 0.5, 1.3, 2.3)]}, - depth=0.12, reveal="metal", sill=None, lintel=None, - ) - for side, sd in sides.items(): - L = sd.L - sd.box("accent", 0, L, 0.0, 0.95, 0, 0.05, skip="n") - sd.box("metal", 0, L, 0.88, 0.98, 0, 0.09, skip="n", bevel=0.02) - sd.box("metal", 0, L, 2.45, 2.55, 0, 0.09, skip="n", bevel=0.02) - sd.box("accent", 0, L, 2.8, 3.05, 0, 0.06, skip="n") - sd.box("metal", 0, L, 3.05, 3.12, 0, 0.08, skip="n") - n = sides["n"] - for h in front: - if h[4] == "shopfront": - k = max(1, round((h[1] - h[0]) / 1.0)) - for i in range(1, k): - u = h[0] + (h[1] - h[0]) * i / k - n.box("metal", u - 0.03, u + 0.03, h[2], h[3], -0.12, -0.08, skip="n") - # Entrance canopy and a pylon sign on the corner. - n.box("metal", dc - 1.1, dc + 1.1, 2.6, 2.75, 0, 1.4, bevel=0.03) - n.box("sign", dc - 1.05, dc + 1.05, 2.56, 2.6, 0.1, 1.3) - px, py = W / 2 + 0.6, -D / 2 - 0.8 - m.cyl("metal", px, py, 0, 0.12, 0.12, 5.6, seg=8) - m.box("board", px - 0.15, py - 0.85, 4.0, px + 0.15, py + 0.85, 6.6, bevel=0.05) - for s in (-1, 1): - sd = Side(m, "e" if s > 0 else "w", 0.3, 1.7, 4.0, at=(px, py)) - lettering(m, sd, 0.85, 1.75, 0.0, 3, px=0.09) - sd.box("sign", 0.1, 1.6, 0.15, 0.25, 0.0, 0.04) - sd.box("sign", 0.1, 1.6, 2.4, 2.5, 0.0, 0.04) - m.box("concrete", -W / 2 - 0.05, -D / 2 - 0.05, 0, W / 2 + 0.05, D / 2 + 0.05, 0.12, skip="b") - cap(m, W, D, H) - - -def shop_roof_d(): - W, D, _ = SHOP - m = Mod("shop_roof_d") - band(m, W, D, 0, 0.25, 0.1, "metal") - ring(m, W, D, 0.25, 0.7, 0.15, "accent") - roof_deck(m, W, D, 0.2, 0.15) - # A billboard on legs facing the street. - sd = Side(m, "n", W, D, 0.2) - for u in (W * 0.25, W * 0.75): - sd.box("metal", u - 0.07, u + 0.07, 0.0, 1.4, -1.6, -1.45) - m.strut("metal", sd.P(u, 0.0, -2.6), sd.P(u, 1.4, -1.55), 0.08) - sd.box("board", W * 0.12, W * 0.88, 1.4, 3.0, -1.6, -1.4, bevel=0.03) - sd.box("accent", W * 0.12, W * 0.88, 1.4, 1.6, -1.4, -1.36) - lettering(m, sd, W / 2, 2.35, -1.4, 6, px=0.1) - ac_unit(m, -W * 0.25, D * 0.25, 0.2) - vent(m, W * 0.3, D * 0.3, 0.2, h=1.2) - return m - - -def factory_ground(): - W, D, _ = SHOP - H = FACTORY_H - m = Mod("factory_ground", ground=True) - tall = lambda c, w=1.3: (c - w / 2, c + w / 2, 1.3, 4.2) # noqa: E731 - front = [(0.5, 3.5, 1.0, 4.0, "metal"), (4.1, 5.0, 0, 2.3, "door"), tall(6.2), tall(7.8, 1.1)] - side = [tall(a + 0.65) for a, _ in spaced(D, 3, 1.3)] - back = [tall(a + 0.65) for a, _ in spaced(W, 4, 1.3)] - layout = {"n": front, "e": side, "s": back, "w": side} - sides = punched(m, W, D, 0, H, layout, role="brick", depth=0.22, reveal="brick", sill="stone", lintel="stone") - for key, sd in sides.items(): - for h in layout[key]: - p = h[4] if len(h) > 4 else "window" - if p != "window": - continue - for i in range(1, 3): - u = h[0] + (h[1] - h[0]) * i / 3 - sd.box("dark", u - 0.03, u + 0.03, h[2], h[3], -0.22, -0.17, skip="n") - for i in range(1, 4): - v = h[2] + (h[3] - h[2]) * i / 4 - sd.box("dark", h[0], h[1], v - 0.03, v + 0.03, -0.22, -0.17, skip="n") - sd.box("stone", 0, sd.L, 0, 0.5, 0, 0.06, skip="n") - # Brick pilasters. - for u in (0.0, sd.L): - sd.box("brick", max(0, u - 0.3), min(sd.L, u + 0.3), 0, H, 0, 0.15, skip="nb") - n = sides["n"] - # Roller door slats, a loading dock with bumpers, and a company sign. - for i in range(1, 10): - v = 1.0 + 3.0 * i / 10 - n.box("dark", 0.5, 3.5, v - 0.02, v + 0.02, -0.22, -0.19, skip="n") - n.box("concrete", 0.3, 3.7, 0, 1.0, 0, 1.8, skip="n") - for u in (0.7, 3.3): - n.box("crane", u - 0.15, u + 0.15, 0.25, 0.9, 1.8, 1.95) - n.box("metal", 0.3, 3.7, 4.15, 4.3, 0, 1.0, bevel=0.02) - n.box("board", 4.0, 8.4, 4.45, 4.95, 0, 0.12, skip="n") - lettering(m, n, 6.2, 4.7, 0.12, 6, px=0.075) - n.box("metal", 3.95, 5.15, 2.4, 2.5, 0, 0.8, skip="n") - cap(m, W, D, H) - - -def factory_roof(): - W, D, _ = SHOP - m = Mod("factory_roof") - band(m, W, D, 0, 0.3, 0.08, "stone") - teeth, h = 3, 1.9 - for i in range(teeth): - y0 = -D / 2 + D * i / teeth - y1 = y0 + D / teeth - m.face("metal", [(-W / 2, y0, 0.3), (W / 2, y0, 0.3), (W / 2, y1, 0.3 + h), (-W / 2, y1, 0.3 + h)], out=(0, -1, 1.2)) - k = 5 - for j in range(k): - x0, x1 = -W / 2 + W * j / k, -W / 2 + W * (j + 1) / k - m.face("window", [(x0, y1, 0.3), (x1, y1, 0.3), (x1, y1, 0.3 + h), (x0, y1, 0.3 + h)], out=(0, 1, 0), cell=True) - m.box("dark", x1 - 0.04, y1, 0.3, x1 + 0.04, y1 + 0.06, 0.3 + h) - m.box("dark", -W / 2, y1, 0.3 + h - 0.08, W / 2, y1 + 0.08, 0.3 + h + 0.04) - for x in (-W / 2, W / 2): - m.face("brick", [(x, y0, 0.3), (x, y1, 0.3), (x, y1, 0.3 + h)], out=(x, 0, 0)) - # Smokestack with banding; a tank and ventilators. - sx, sy = W * 0.33, D * 0.32 - m.cyl("brick", sx, sy, 0.3, 0.75, 0.5, 12.5, seg=12) - for z in (3.0, 7.0, 11.0): - r = 0.75 - (0.25 * (z - 0.3) / 12.5) - m.cyl("dark", sx, sy, z, r + 0.06, r + 0.06, 0.3, seg=12, smooth=False) - m.cyl("dark", sx, sy, 12.8, 0.6, 0.6, 0.5, seg=12, smooth=False) - m.anchor("smoke", (sx, sy, 13.6)) - tx, ty = -W * 0.3, -D * 0.05 - for lx, ly in ((-0.6, -0.6), (0.6, -0.6), (-0.6, 0.6), (0.6, 0.6)): - m.box("dark", tx + lx - 0.06, ty + ly - 0.06, 0.3 + h, tx + lx + 0.06, ty + ly + 0.06, 3.2 + h) - m.cyl("metal", tx, ty, 3.2 + h, 1.05, 1.05, 2.2, seg=14) - m.cyl("metal", tx, ty, 5.4 + h, 1.1, 0.15, 0.7, seg=14, smooth=False) - for x in (-W * 0.05, W * 0.1): - vent(m, x, -D * 0.38, 0.3 + h * 0.25, h=1.0) - return m - - -# Grade 2: a row of three brownstone townhouses. - - -def town_ground(): - W, D, H = APT - m = Mod("town_ground", ground=True) - uw = W / 3 - n = Side(m, "n", W, D) - for i, role in enumerate(("brick", "wall", "brick")): - u0 = i * uw - dc = u0 + uw * 0.32 - door = (dc - 0.5, dc + 0.5, 0.9, 2.85, "door") - win = (u0 + uw * 0.72 - 0.45, u0 + uw * 0.72 + 0.45, 1.15, 2.65) - low = (u0 + uw * 0.72 - 0.4, u0 + uw * 0.72 + 0.4, 0.15, 0.65) - n.wall(role, 0, H, [door, win, low], u0, u0 + uw) - n.opening(door, 0.2, pane="door", reveal="stone") - n.opening(win, 0.16, pane="window", reveal=role) - n.opening(low, 0.12, pane="window", reveal=role) - n.box("stone", win[0] - 0.1, win[1] + 0.1, win[2] - 0.09, win[2], 0, 0.13, skip="n") - n.box("stone", win[0] - 0.12, win[1] + 0.12, win[3], win[3] + 0.22, 0, 0.06, skip="n") - # Stoop: steps up to the raised door, with a rail either side. - for j in range(4): - n.box("stone", dc - 0.6, dc + 0.6, 0, 0.9 * (4 - j) / 4, 0, 0.35 * (j + 1) + 0.1, skip="n") - for u in (dc - 0.62, dc + 0.56): - n.m.strut("metal", n.P(u + 0.03, 1.8, 0.1), n.P(u + 0.03, 1.0, 1.45), 0.05) - n.box("metal", u, u + 0.06, 0.25, 1.0, 1.42, 1.48) - n.box("trim", dc - 0.65, dc + 0.65, 2.85, 3.0, 0, 0.18, skip="n", bevel=0.02) - n.box("stone", u0, u0 + uw, 0, 0.8, 0, 0.05, skip="n") - for i in range(4): - u = i * uw - n.box("trim", max(0, u - 0.1), min(W, u + 0.1), 0, H, 0, 0.1, skip="nb") - sides = punched( - m, W, D, 0, H, - {"e": [(a, b, 1.1, 2.5) for a, b in spaced(D, 2, 0.9)], "s": [(a, b, 1.1, 2.5) for a, b in spaced(W, 3, 0.9)], "w": [(a, b, 1.1, 2.5) for a, b in spaced(D, 2, 0.9)]}, - role="brick", depth=0.15, sill="stone", lintel="stone", - ) - band(m, W, D, H - 0.18, H, 0.06, "stone") - cap(m, W, D, H) - return sides - - -def town_floor(): - W, D, H = APT - m = Mod("town_floor") - uw = W / 3 - n = Side(m, "n", W, D) - for i, role in enumerate(("brick", "wall", "brick")): - u0 = i * uw - if i == 1: - # The middle house has a bay window. - n.wall(role, 0, H, [], u0, u0 + uw) - b0, b1, bd = u0 + 0.4, u0 + uw - 0.4, 0.65 - n.box(role, b0, b1, 0.2, H - 0.05, 0, bd, skip="n") - for a, b in spaced(b1 - b0, 2, 0.85): - n.quad("window", b0 + a, b0 + b, 0.75, 2.5, bd + 0.01, cell=True) - n.box("trim", b0 + a - 0.06, b0 + b + 0.06, 0.66, 0.75, bd, bd + 0.1) - n.box("trim", b0 - 0.05, b1 + 0.05, H - 0.3, H - 0.05, 0, bd + 0.08) - else: - holes = [(u0 + uw * c - 0.45, u0 + uw * c + 0.45, 0.75, 2.5) for c in (0.3, 0.72)] - n.wall(role, 0, H, holes, u0, u0 + uw) - for h in holes: - n.opening(h, 0.16, pane="window", reveal=role) - n.box("stone", h[0] - 0.1, h[1] + 0.1, h[2] - 0.09, h[2], 0, 0.13, skip="n") - n.box("stone", h[0] - 0.12, h[1] + 0.12, h[3], h[3] + 0.22, 0, 0.06, skip="n") - c = (h[0] + h[1]) / 2 - n.box("stone", c - 0.1, c + 0.1, h[3] + 0.04, h[3] + 0.3, 0, 0.09, skip="n") - for i in range(4): - u = i * uw - n.box("trim", max(0, u - 0.1), min(W, u + 0.1), 0, H, 0, 0.1, skip="nb") - punched( - m, W, D, 0, H, - {"e": [(a, b, 0.8, 2.4) for a, b in spaced(D, 2, 0.9)], "s": [(a, b, 0.8, 2.4) for a, b in spaced(W, 3, 0.9)], "w": [(a, b, 0.8, 2.4) for a, b in spaced(D, 2, 0.9)]}, - role="brick", depth=0.15, sill="stone", lintel="stone", - ) - band(m, W, D, 0, 0.14, 0.04, "stone", bevel=0.0) - cap(m, W, D, H) - - -def town_roof(): - W, D, _ = APT - m = Mod("town_roof") - uw = W / 3 - band(m, W, D, 0, 0.3, 0.1, "trim") - band(m, W, D, 0.3, 0.45, 0.3, "trim", bevel=0.04) - n = Side(m, "n", W, D) - k = round(W / 0.6) - for i in range(k): - u = W * (i + 0.5) / k - n.box("trim", u - 0.06, u + 0.06, 0.05, 0.3, 0.1, 0.28, skip="nt") - # Mansard roofs with a dormer each, chimneys on the party walls. - t, rise = 0.95, 2.1 - m.hexa("roof", lambda a, b, c: ((-1, 1)[a] * (W / 2 - 0.05 - c * t), (-1, 1)[b] * (D / 2 - 0.05 - c * t), 0.45 + c * rise), skip="b") - for i in range(3): - uc = (i + 0.5) * uw - n.box("trim", uc - 0.55, uc + 0.55, 0.75, 2.05, -0.55, 0.12) - n.quad("window", uc - 0.38, uc + 0.38, 0.95, 1.85, 0.121, cell=True) - n.m.hexa("roof", lambda a, b, c, uc=uc: n.P(uc + (a - 0.5) * 1.35, 2.05 + c * 0.14 + b * 0.25, 0.22 - b * 0.9)) - for i in (1, 2): - u = i * uw - W / 2 - m.box("brick", u - 0.35, D * 0.18, 0.45, u + 0.35, D * 0.18 + 0.7, 3.4) - m.box("stone", u - 0.42, D * 0.18 - 0.07, 3.4, u + 0.42, D * 0.18 + 0.77, 3.55) - for dx in (-0.15, 0.15): - m.cyl("dark", u + dx, D * 0.18 + 0.35, 3.55, 0.08, 0.08, 0.25, seg=6) - m.anchor("smoke", (uw - W / 2, D * 0.18 + 0.35, 4.1)) - return m - - -# Grade 3: a round glass office tower. - -RSEG = 20 - - -def round_ground(): - W, _, H = OFFICE - R = W / 2 - m = Mod("round_ground", ground=True) - ringwall(m, "lobby", R - 0.6, R - 0.6, 0.15, H - 0.45, RSEG) - mullions(m, "metal", R - 0.6, 0.15, H - 0.45, RSEG, t=0.06, out=0.05) - for i in range(0, RSEG, 2): - x, y, _ = around(R - 0.15, TAU * (i + 0.5) / RSEG, 0) - m.cyl("stone", x, y, 0, 0.22, 0.22, H - 0.4, seg=8) - m.cyl("metal", 0, 0, H - 0.45, R + 0.05, R + 0.05, 0.45, seg=RSEG * 2, smooth=False) - m.cyl("stone", 0, 0, 0, R + 0.1, R + 0.1, 0.15, seg=RSEG * 2, smooth=False) - # A canopy over the doors, lit underneath. - m.box("metal", -2.2, -R - 1.6, 2.7, 2.2, -R + 0.5, 2.9, bevel=0.03) - m.box("shopfront", -2.0, -R - 1.5, 2.66, 2.0, -R + 0.4, 2.7) - for x in (-1.9, 1.9): - m.cyl("metal", x, -R - 1.35, 0.15, 0.08, 0.08, 2.55, seg=8) - disk(m, "deck", R, H, RSEG * 2) - - -def round_floor(): - W, _, H = OFFICE - R = W / 2 - m = Mod("round_floor") - ringwall(m, "spandrel", R, R, 0, 0.6, RSEG) - ringwall(m, "glass", R - 0.03, R - 0.03, 0.6, H, RSEG, cell=True) - mullions(m, "metal", R - 0.03, 0.0, H, RSEG, t=0.07, out=0.07) - m.cyl("metal", 0, 0, 0, R + 0.1, R + 0.1, 0.12, seg=RSEG * 2, smooth=False) - disk(m, "deck", R, H, RSEG * 2) - - -def round_setback(): - W, _, _ = OFFICE - R = W / 2 - m = Mod("round_setback") - m.cyl("metal", 0, 0, 0, R + 0.15, R + 0.15, 0.5, seg=RSEG * 2, smooth=False) - ringwall(m, "railglass", R + 0.05, R + 0.05, 0.5, 1.4, RSEG * 2) - m.cyl("metal", 0, 0, 1.4, R + 0.1, R + 0.1, 0.06, seg=RSEG * 2, smooth=False) - for i in range(8): - x, y, _ = around(R * 0.84, TAU * (i + 0.5) / 8, 0) - m.cyl("stone", x, y, 0.5, 0.4, 0.35, 0.45, seg=8) - m.blob("leaf", (x, y, 1.25), (0.48, 0.48, 0.5), sub=1, jitter=0.06) - - -def round_roof(): - W, _, _ = OFFICE - R = W / 2 - m = Mod("round_roof") - ringwall(m, "metal", R + 0.05, R + 0.05, 0, 1.1, RSEG * 2) - annulus(m, "metal", R - 0.2, R + 0.05, 1.1, RSEG * 2) - disk(m, "deck", R - 0.2, 0.15, RSEG * 2) - # A glass crown ringed with light, and a mast. - ringwall(m, "railglass", R * 0.82, R * 0.42, 1.1, 6.5, RSEG) - mullions(m, "metal", R * 0.62, 1.1, 6.5, RSEG, t=0.08, out=0.04, every=2) - for z, r in ((2.2, R * 0.76), (4.0, R * 0.62)): - m.cyl("led", 0, 0, z, r + 0.04, r + 0.04, 0.12, seg=RSEG * 2, smooth=False) - m.cyl("metal", 0, 0, 6.5, R * 0.44, R * 0.44, 0.3, seg=RSEG, smooth=False) - m.cyl("metal", 0, 0, 6.8, 0.25, 0.05, 9.0, seg=8) - m.anchor("beacon", (0, 0, 16.0)) - return m - - -# Grade 4: a twisting supertall (the app turns each storey a little) and a TV tower. - -TW_A, TW_C = 4.7, 1.5 - - -def lm3_ground(): - S, H = LANDMARK - m = Mod("lm3_ground", ground=True) - oc = octagon(TW_A - 0.6, TW_C - 0.25) - prism_sides(m, "lobby", oc, 0.15, H - 0.4, cells=1.6) - for x, y in octagon(TW_A - 0.1, TW_C): - m.cyl("metal", x, y, 0, 0.22, 0.22, H - 0.3, seg=8) - prism(m, "metal", octagon(TW_A + 0.1, TW_C + 0.05), H - 0.4, H, top=True) - prism(m, "stone", octagon(TW_A + 0.5, TW_C + 0.2), 0, 0.15, top=True) - m.box("metal", -2.6, -TW_A - 2.0, 2.8, 2.6, -TW_A + 0.4, 3.0, bevel=0.04) - m.box("led", -2.5, -TW_A - 1.95, 2.76, 2.5, -TW_A + 0.3, 2.8) - - -def lm3_floor(): - _, H = LANDMARK - m = Mod("lm3_floor") - oc = octagon(TW_A, TW_C) - prism_sides(m, "spandrel", oc, 0.22, 0.6) - prism_sides(m, "glass", oc, 0.6, H, cells=1.55) - # White slab edges make the twist read from afar. - prism(m, "paint", octagon(TW_A + 0.22, TW_C + 0.09), 0, 0.22, top=False, bottom=False) - m.face("paint", [(x, y, 0.22) for x, y in octagon(TW_A + 0.22, TW_C + 0.09)], out=Z) - for x, y in oc: - m.box("metal", x - 0.06, y - 0.06, 0.22, x + 0.06, y + 0.06, H) - m.face("deck", [(x, y, H) for x, y in oc], out=Z) - - -def lm3_crown(): - m = Mod("lm3_crown") - prism(m, "paint", octagon(TW_A + 0.22, TW_C + 0.09), 0, 0.3, top=False) - prism_sides(m, "railglass", octagon(TW_A, TW_C), 0.3, 3.2) - m.face("deck", [(x, y, 0.5) for x, y in octagon(TW_A, TW_C)], out=Z) - # Fins rise from the corners and lean in to the spire. - for x, y in octagon(TW_A, TW_C): - m.strut("metal", (x, y, 0.3), (x * 0.25, y * 0.25, 11.0), 0.2) - for z, k in ((3.2, 0.79), (6.5, 0.55)): - prism(m, "led", octagon(TW_A * k + 0.05, TW_C * k), z, z + 0.18, top=False) - m.cyl("metal", 0, 0, 0.5, 1.4, 0.9, 11.0, seg=8, smooth=False) - m.cyl("metal", 0, 0, 11.5, 0.3, 0.04, 12.0, seg=8) - m.cyl("led", 0, 0, 13.0, 0.26, 0.26, 0.3, seg=8) - m.anchor("beacon", (0, 0, 23.8)) - return m - - -TV_R = 1.65 - - -def tvt_base(): - S, H = LANDMARK - m = Mod("tvt_base", ground=True) - R = S / 2 - 0.3 - ringwall(m, "lobby", R - 0.4, R - 0.4, 0.2, H - 0.5, 16) - mullions(m, "metal", R - 0.4, 0.2, H - 0.5, 16, t=0.08, out=0.06) - m.cyl("concrete", 0, 0, H - 0.5, R + 0.1, R + 0.1, 0.5, seg=32, smooth=False) - m.cyl("stone", 0, 0, 0, R + 0.4, R + 0.4, 0.2, seg=32, smooth=False) - disk(m, "deck", R, H, 32) - m.cyl("concrete", 0, 0, H, TV_R * 1.55, TV_R, 3.5, seg=16) - m.box("metal", -2.0, -R - 1.4, 2.6, 2.0, -R + 0.4, 2.8, bevel=0.03) - m.box("shopfront", -1.9, -R - 1.35, 2.56, 1.9, -R + 0.3, 2.6) - - -def tvt_shaft(): - _, H = LANDMARK - m = Mod("tvt_shaft") - m.cyl("concrete", 0, 0, 0, TV_R, TV_R, H, seg=16) - # Lift shafts glazed front and back: lit lines up the tower at night. - for s in (-1, 1): - y = s * (TV_R + 0.02) - m.face("window", [(-0.28, y, 0), (0.28, y, 0), (0.28, y, H), (-0.28, y, H)], out=(0, s, 0), cell=True) - m.box("metal", -0.36, y - 0.05, 0, -0.28, y + 0.05, H) - m.box("metal", 0.28, y - 0.05, 0, 0.36, y + 0.05, H) - - -def tvt_pod(): - """The observation pod, two storeys tall; the shaft runs through it.""" - m = Mod("tvt_pod") - R = 5.6 - ringwall(m, "concrete", TV_R + 0.1, R, 0.0, 2.4, 24) - annulus(m, "concrete", TV_R, TV_R + 0.1, 0.0, 24, up=False) - ringwall(m, "glass", R, R + 0.35, 2.4, 4.6, 24, cell=True) - mullions(m, "metal", R + 0.17, 2.4, 4.6, 24, t=0.08, out=0.06) - m.cyl("metal", 0, 0, 4.6, R + 0.55, R + 0.55, 0.4, seg=48, smooth=False) - ringwall(m, "window", R - 1.1, R - 1.1, 5.0, 6.4, 24, cell=True) - annulus(m, "metal", R - 1.1, R + 0.55, 5.0, 48) - ringwall(m, "railglass", R + 0.45, R + 0.45, 5.0, 5.9, 48) - ringwall(m, "concrete", R - 1.0, TV_R + 0.2, 6.4, 7.2, 24) - m.cyl("led", 0, 0, 4.2, R + 0.4, R + 0.4, 0.1, seg=48, smooth=False) - - -def tvt_spire(): - m = Mod("tvt_spire") - m.cyl("concrete", 0, 0, 0, TV_R, TV_R * 0.8, 3.0, seg=16) - m.cyl("metal", 0, 0, 3.0, 2.6, 2.6, 0.35, seg=24, smooth=False) - ringwall(m, "railglass", 2.5, 2.5, 3.35, 4.2, 24) - m.cyl("paint", 0, 0, 3.35, 0.8, 0.45, 10.0, seg=10) - for i in range(6): - z = 4.5 + i * 1.6 - r = 0.8 - 0.35 * (z - 3.35) / 10.0 + 0.03 - m.cyl("accent", 0, 0, z, r, r - 0.04, 0.8, seg=10, smooth=False) - m.cyl("metal", 0, 0, 13.35, 0.28, 0.06, 13.0, seg=8) - m.anchor("beacon", (0, 0, 26.5)) - return m - - -# ---- parks ------------------------------------------------------------------ - - -def fountain(): - m = Mod("fountain", ground=True, ao=2.0) - m.cyl("stone", 0, 0, 0, 3.2, 3.2, 0.25, seg=16, smooth=False) - ringwall(m, "stone", 2.6, 2.6, 0.25, 0.75, 16) - ringwall(m, "stone", 2.3, 2.3, 0.75, 0.25, 16) - annulus(m, "stone", 2.3, 2.6, 0.75, 16) - disk(m, "water", 2.3, 0.6, 16) - m.cyl("stone", 0, 0, 0.6, 0.45, 0.3, 1.4, seg=10) - m.cyl("stone", 0, 0, 1.9, 0.3, 1.25, 0.35, seg=14, smooth=False) - disk(m, "water", 1.15, 2.22, 14) - m.cyl("stone", 0, 0, 2.25, 0.18, 0.12, 0.8, seg=8) - m.cyl("stone", 0, 0, 3.0, 0.15, 0.5, 0.2, seg=10, smooth=False) - m.cyl("water", 0, 0, 3.2, 0.12, 0.02, 1.2, seg=8) - for i in range(8): - a = TAU * i / 8 - x, y, _ = around(0.95, a, 0) - m.strut("water", (x * 0.3, y * 0.3, 2.3), (x * 1.6, y * 1.6, 0.6), 0.07) - - -def bandstand(): - m = Mod("bandstand", ground=True, ao=2.0) - m.cyl("stone", 0, 0, 0, 3.2, 3.2, 0.6, seg=6, smooth=False) - m.cyl("wood", 0, 0, 0.6, 3.0, 3.0, 0.06, seg=6, smooth=False) - for i in range(6): - x, y, _ = around(2.75, TAU * i / 6, 0) - m.cyl("paint", x, y, 0.6, 0.1, 0.1, 2.7, seg=6) - x2, y2, _ = around(2.75, TAU * (i + 1) / 6, 0) - if i != 4: - m.strut("paint", (x, y, 1.45), (x2, y2, 1.45), 0.07) - m.cyl("roof", 0, 0, 3.3, 3.5, 0.3, 1.7, seg=6, smooth=False) - m.cyl("paint", 0, 0, 3.2, 3.5, 3.5, 0.12, seg=6, smooth=False) - m.cyl("gold", 0, 0, 5.0, 0.15, 0.02, 0.8, seg=6) - - -def bench(): - m = Mod("bench", ground=True, ao=0.6) - for x in (-0.75, 0.75): - m.box("metal", x - 0.04, -0.25, 0, x + 0.04, 0.25, 0.45) - m.box("metal", x - 0.04, 0.2, 0.45, x + 0.04, 0.26, 0.9) - for i in range(3): - y = -0.22 + i * 0.15 - m.box("wood", -0.9, y, 0.45, 0.9, y + 0.12, 0.5) - for z in (0.6, 0.78): - m.box("wood", -0.9, 0.24, z, 0.9, 0.29, z + 0.1) - - -def goal(): - m = Mod("goal", ground=True, ao=1.0) - w, h, d = 7.3, 2.44, 1.8 - for x in (-w / 2, w / 2): - m.box("paint", x - 0.06, -0.06, 0, x + 0.06, 0.06, h) - m.strut("paint", (x, 0, h), (x, d, 0), 0.05) - m.box("paint", x - 0.03, d - 0.03, 0, x + 0.03, d + 0.03, 0.06) - m.box("paint", -w / 2 - 0.06, -0.06, h, w / 2 + 0.06, 0.06, h + 0.12) - m.box("paint", -w / 2, d - 0.03, 0, w / 2, d + 0.03, 0.06) - - -def bleachers(): - """A small stand of seats beside the pitch, 14 m long.""" - m = Mod("bleachers", ground=True, ao=2.0) - L = 14.0 - for i in range(5): - y0 = i * 0.8 - m.box("concrete", -L / 2, y0, 0, L / 2, y0 + 0.8, 0.45 * (i + 1)) - m.box("accent", -L / 2 + 0.2, y0 + 0.1, 0.45 * (i + 1), L / 2 - 0.2, y0 + 0.4, 0.45 * (i + 1) + 0.25) - for x in (-L / 2 + 0.2, 0, L / 2 - 0.2): - m.box("metal", x - 0.08, 4.0, 0, x + 0.08, 4.16, 4.6) - m.box("roof", -L / 2 - 0.3, -0.6, 4.6, L / 2 + 0.3, 4.4, 4.75) - - -# ---- tower crane ------------------------------------------------------------ - -CR = "crane" - - -def crane_base(): - m = Mod("crane_base", ground=True, ao=1.5) - m.box("concrete", -1.7, -1.7, 0, 1.7, 1.7, 0.6, skip="b", bevel=0.04) - for sx in (-1, 1): - m.box("concrete", sx * 1.25 - 0.4, -1.3, 0.6, sx * 1.25 + 0.4, 1.3, 1.1, bevel=0.03) - for sx in (-1, 1): - for sy in (-1, 1): - m.strut(CR, (sx * 0.75, sy * 0.75, 0.6), (sx * 1.2, sy * 1.2, 0.6), 0.12) - - -def crane_mast(): - m = Mod("crane_mast", ao=1.0) - h, a = 3.0, 0.75 - cs = [(-a, -a), (a, -a), (a, a), (-a, a)] - for x, y in cs: - m.box(CR, x - 0.07, y - 0.07, 0, x + 0.07, y + 0.07, h, skip="bt") - for i in range(4): - (x0, y0), (x1, y1) = cs[i], cs[(i + 1) % 4] - m.strut(CR, (x0, y0, 0.08), (x1, y1, h - 0.08), 0.06) - m.strut(CR, (x0, y0, h - 0.06), (x1, y1, h - 0.06), 0.06) - - -def crane_slew(): - """Turntable, cab and tower head; turns with the jib.""" - m = Mod("crane_slew", ao=1.5) - m.cyl("dark", 0, 0, 0, 1.0, 1.0, 0.35, seg=16) - m.box(CR, -1.1, -0.9, 0.35, 1.1, 0.9, 0.8, bevel=0.03) - # Operator's cab on the front side, glazed on three faces. - m.box("trim", -0.2, -2.1, -0.6, 1.2, -0.95, 0.75, bevel=0.04) - m.face("carglass", [(-0.21, -2.0, -0.4), (-0.21, -1.05, -0.4), (-0.21, -1.05, 0.6), (-0.21, -2.0, 0.6)], out=(-1, 0, 0)) - m.face("carglass", [(-0.1, -2.11, -0.4), (1.1, -2.11, -0.4), (1.1, -2.11, 0.6), (-0.1, -2.11, 0.6)], out=(0, -1, 0)) - m.face("carglass", [(1.21, -2.0, 0.0), (1.21, -1.05, 0.0), (1.21, -1.05, 0.6), (1.21, -2.0, 0.6)], out=(1, 0, 0)) - apex = (0, 0, 5.2) - for x, y in ((-0.8, -0.6), (0.8, -0.6), (0.8, 0.6), (-0.8, 0.6)): - m.strut(CR, (x, y, 0.8), apex, 0.12) - m.strut(CR, (-0.5, -0.38, 2.4), (0.5, -0.38, 2.4), 0.06) - m.strut(CR, (-0.5, 0.38, 2.4), (0.5, 0.38, 2.4), 0.06) - m.box(CR, -0.25, -0.25, 5.0, 0.25, 0.25, 5.45) - m.anchor("apex", apex) - m.anchor("beacon", (0, 0, 5.75)) - - -def crane_jib(): - """One 3 m section of the jib, from x = 0 to x = -3.""" - m = Mod("crane_jib", ao=1.0) - w, h, L = 0.55, 1.25, 3.0 - m.strut(CR, (0, -w, 0), (-L, -w, 0), 0.11) - m.strut(CR, (0, w, 0), (-L, w, 0), 0.11) - m.strut(CR, (0, 0, h), (-L, 0, h), 0.11) - for y in (-w, w): - m.strut(CR, (0, y, 0), (-L / 2, 0, h), 0.06) - m.strut(CR, (-L / 2, 0, h), (-L, y, 0), 0.06) - m.strut(CR, (0, -w, 0), (0, w, 0), 0.06) - m.strut(CR, (0, -w, 0), (-L, w, 0), 0.05) - - -def crane_jib_tip(): - m = Mod("crane_jib_tip", ao=1.0) - w, h = 0.55, 1.25 - for a in ((0, -w, 0), (0, w, 0), (0, 0, h)): - m.strut(CR, a, (-1.2, 0, 0.3), 0.08) - m.box(CR, -1.4, -0.2, 0.1, -1.0, 0.2, 0.5) - m.anchor("beacon", (-1.2, 0, 0.75)) - - -def crane_counter(): - """Counter-jib with walkway, winch and counterweights (x from 0.8 to 9.5).""" - m = Mod("crane_counter", ao=1.2) - for y in (-0.6, 0.6): - m.box(CR, 0.8, y - 0.08, -0.25, 9.5, y + 0.08, 0.05) - m.strut(CR, (0.8, y * 1.1, 1.0), (9.5, y * 1.1, 1.0), 0.04) - for x in (1.0, 3.0, 5.0, 7.0, 9.3): - m.strut(CR, (x, y * 1.1, 0.05), (x, y * 1.1, 1.0), 0.04) - for x in (1.5, 3.5, 5.5, 7.5): - m.strut(CR, (x, -0.6, -0.1), (x, 0.6, -0.1), 0.06) - m.box("grate", 0.8, -0.55, 0.0, 7.6, 0.55, 0.05) - m.box("dark", 4.6, -0.5, 0.05, 6.4, 0.5, 1.0, bevel=0.03) - m.cyl("metal", 0, 0, -0.45, 0.35, 0.35, 0.9, seg=12, M=Matrix.Translation((4.2, 0, 0.45)) @ Matrix.Rotation(math.pi / 2, 4, "X")) - for i in range(3): - x0 = 7.75 + i * 0.58 - m.box("concrete", x0, -0.85, -1.9, x0 + 0.52, 0.85, 0.05, bevel=0.03) - m.anchor("end", (9.3, 0, 0.05)) - - -def crane_trolley(): - m = Mod("crane_trolley", ao=0.8) - m.box(CR, -0.55, -0.72, -0.45, 0.55, 0.72, -0.12, bevel=0.03) - for x in (-0.35, 0.35): - for y in (-0.55, 0.55): - m.cyl("dark", 0, 0, -0.06, 0.12, 0.12, 0.12, seg=8, M=Matrix.Translation((x, y, -0.05)) @ Matrix.Rotation(math.pi / 2, 4, "X")) - - -def crane_hook(): - """Hook block; its origin is where the hoist rope ends.""" - m = Mod("crane_hook", ao=0.8) - m.box(CR, -0.3, -0.22, -0.9, 0.3, 0.22, 0, bevel=0.04) - m.cyl("dark", 0, 0, -0.26, 0.25, 0.25, 0.52, seg=12, M=Matrix.Translation((0, 0, -0.35)) @ Matrix.Rotation(math.pi / 2, 4, "X")) - pts = [(0, 0, -0.9), (0, 0, -1.35), (0.12, 0, -1.6), (0.32, 0, -1.55), (0.36, 0, -1.35)] - for a, b in zip(pts, pts[1:]): - m.strut("dark", a, b, 0.09) - - -def i_beam(m, x0, x1, y, z): - m.box("metal", x0, y - 0.15, z, x1, y + 0.15, z + 0.04) - m.box("metal", x0, y - 0.02, z + 0.04, x1, y + 0.02, z + 0.36) - m.box("metal", x0, y - 0.15, z + 0.36, x1, y + 0.15, z + 0.4) - - -def crane_load(): - """Steel beams in slings; origin at the hook.""" - m = Mod("crane_load", ao=1.0) - for y in (-0.18, 0.18): - for z in (-2.45, -2.05): - i_beam(m, -1.6, 1.6, y, z) - for x in (-1.1, 1.1): - m.box("dark", x - 0.05, -0.38, -2.5, x + 0.05, 0.38, -1.6) - for y in (-0.36, 0.36): - m.strut("dark", (0, 0, -1.55), (x, y, -1.65), 0.035) - - -# ---- traffic ---------------------------------------------------------------- - - -def wheel(m, x, y, r=0.33, w=0.24): - M = Matrix.Translation((x, y, r)) @ Matrix.Rotation(math.pi / 2, 4, "Y") - m.cyl("tyre", 0, 0, -w / 2, r, r, w, seg=10, M=M) - m.cyl("chrome", 0, 0, -w / 2 - 0.01, r * 0.55, r * 0.55, w + 0.02, seg=8, smooth=False, M=M) - - -def lights(m, L, Wd, z, s=1.0): - for sx in (-1, 1): - x = sx * (Wd / 2 - 0.32 * s) - m.box("headlight", x - 0.2 * s, -L / 2 - 0.03, z, x + 0.2 * s, -L / 2 + 0.05, z + 0.14 * s) - m.box("taillight", x - 0.18 * s, L / 2 - 0.05, z, x + 0.18 * s, L / 2 + 0.03, z + 0.14 * s) - - -def car(name, L, Wd, body_h, c0, c1, roof_h=0.5, sign=False): - """A car: front at -y, cabin glazed from y = c0 to c1.""" - m = Mod(name, ground=True, ao=1.0) - x = Wd / 2 - m.box("body", -x, -L / 2, 0.3, x, L / 2, body_h, bevel=0.07) - top0, top1 = c0 + 0.55, c1 - 0.3 - m.hexa("carglass", lambda a, b, c: ((a - 0.5) * (Wd - 0.12 - c * 0.22), (c0, c1)[b] + c * (top0 - c0, top1 - c1)[b], body_h + c * roof_h), skip="b") - m.box("body", -(Wd - 0.36) / 2, top0 - 0.02, body_h + roof_h, (Wd - 0.36) / 2, top1 + 0.02, body_h + roof_h + 0.06, bevel=0.02) - for y in (-L / 2, L / 2): - s = -1 if y < 0 else 1 - m.box("dark", -x - 0.02, min(y, y + s * 0.08), 0.28, x + 0.02, max(y, y + s * 0.08), 0.46) - lights(m, L, Wd, body_h - 0.24) - for sy in (-1, 1): - for sx in (-1, 1): - wheel(m, sx * (x - 0.1), sy * (L / 2 - 0.78)) - if sign: - m.box("taxisign", -0.3, (top0 + top1) / 2 - 0.12, body_h + roof_h + 0.06, 0.3, (top0 + top1) / 2 + 0.12, body_h + roof_h + 0.26, bevel=0.02) - - -def van(): - m = Mod("car_van", ground=True, ao=1.0) - L, Wd = 4.9, 1.95 - x = Wd / 2 - m.box("body", -x, -L / 2, 0.32, x, L / 2, 2.05, bevel=0.09) - m.face("carglass", [(-x + 0.12, -L / 2 - 0.01, 1.2), (x - 0.12, -L / 2 - 0.01, 1.2), (x - 0.15, -L / 2 - 0.01, 1.9), (-x + 0.15, -L / 2 - 0.01, 1.9)], out=(0, -1, 0)) - for sx in (-1, 1): - m.face("carglass", [(sx * (x + 0.01), -L / 2 + 0.25, 1.2), (sx * (x + 0.01), -L / 2 + 1.3, 1.2), (sx * (x + 0.01), -L / 2 + 1.3, 1.85), (sx * (x + 0.01), -L / 2 + 0.25, 1.85)], out=(sx, 0, 0)) - for y in (-L / 2, L / 2): - s = -1 if y < 0 else 1 - m.box("dark", -x - 0.02, min(y, y + s * 0.08), 0.3, x + 0.02, max(y, y + s * 0.08), 0.5) - lights(m, L, Wd, 0.8) - for sy in (-1, 1): - for sx in (-1, 1): - wheel(m, sx * (x - 0.1), sy * (L / 2 - 0.85), r=0.36) - - -def bus(): - m = Mod("bus", ground=True, ao=1.2) - L, Wd = 10.5, 2.5 - x = Wd / 2 - m.box("body", -x, -L / 2, 0.38, x, L / 2, 3.05, bevel=0.12) - for sx in (-1, 1): - m.face("carglass", [(sx * (x + 0.01), -L / 2 + 1.4, 1.55), (sx * (x + 0.01), L / 2 - 0.6, 1.55), (sx * (x + 0.01), L / 2 - 0.6, 2.6), (sx * (x + 0.01), -L / 2 + 1.4, 2.6)], out=(sx, 0, 0)) - m.face("carglass", [(-x + 0.1, -L / 2 - 0.01, 1.0), (x - 0.1, -L / 2 - 0.01, 1.0), (x - 0.1, -L / 2 - 0.01, 2.55), (-x + 0.1, -L / 2 - 0.01, 2.55)], out=(0, -1, 0)) - m.face("carglass", [(-0.95, L / 2 + 0.01, 1.8), (0.95, L / 2 + 0.01, 1.8), (0.95, L / 2 + 0.01, 2.6), (-0.95, L / 2 + 0.01, 2.6)], out=(0, 1, 0)) - m.box("led", -0.9, -L / 2 - 0.04, 2.65, 0.9, -L / 2 + 0.02, 2.92) - lights(m, L, Wd, 0.75, 1.2) - for y in (-L / 2 + 2.0, L / 2 - 2.3): - for sx in (-1, 1): - wheel(m, sx * (x - 0.15), y, r=0.5, w=0.32) - - -def person(): - m = Mod("person", ground=True, ao=0.5) - for x in (-1, 1): - m.box("pants", x * 0.02 if x > 0 else -0.17, -0.09, 0.0, 0.17 if x > 0 else -0.02, 0.09, 0.86) - m.box("shirt", x * 0.3 - 0.05 * x - 0.045, -0.07, 0.82, x * 0.3 - 0.05 * x + 0.045, 0.07, 1.4) - m.box("skin", x * 0.25 - 0.04, -0.05, 0.7, x * 0.25 + 0.04, 0.05, 0.82) - m.box("shirt", -0.2, -0.12, 0.84, 0.2, 0.12, 1.42, bevel=0.03) - m.box("skin", -0.05, -0.05, 1.42, 0.05, 0.05, 1.48) - m.blob("skin", (0, 0, 1.6), (0.11, 0.12, 0.14), sub=1) - m.blob("hair", (0, 0.025, 1.66), (0.12, 0.125, 0.1), sub=1) - - -# ---- countryside ------------------------------------------------------------ -# Cheap pieces drawn thousands of times around the city: keep them to a few -# dozen triangles. - - -def forest_broadleaf(): - m = Mod("forest_a", ground=True, ao=2.5) - m.cyl("bark", 0, 0, 0, 0.22, 0.14, 2.2, seg=5, smooth=False) - m.blob("leaf", (0, 0, 3.2), (1.6, 1.6, 1.35), sub=1, jitter=0.18) - m.blob("leaf", (0.5, 0.3, 4.2), (1.05, 1.05, 0.9), sub=1, jitter=0.12) - - -def forest_conifer(): - m = Mod("forest_b", ground=True, ao=2.5) - m.cyl("bark", 0, 0, 0, 0.2, 0.12, 1.2, seg=5, smooth=False) - m.cyl("leaf", 0, 0, 0.9, 1.7, 0.1, 3.0, seg=7, smooth=False, jitter=0.12) - m.cyl("leaf", 0, 0, 2.9, 1.15, 0.0, 2.8, seg=7, smooth=False, M=Matrix.Rotation(0.4, 4, "Z"), jitter=0.08) - - -def forest_emergent(): - """A tall rainforest tree: bare trunk, wide flat crown above the canopy.""" - m = Mod("forest_c", ground=True, ao=3.0) - m.cyl("bark", 0, 0, 0, 0.35, 0.16, 7.5, seg=6, smooth=False) - for end in ((1.6, 0.4, 7.6), (-1.4, 0.6, 7.8), (0.2, -1.5, 7.5)): - branch(m, "bark", (0, 0, 6.2), end, 0.12) - for c, s in (((0, 0, 8.3), (2.6, 2.4, 0.9)), ((1.5, 0.5, 7.9), (1.4, 1.3, 0.7)), ((-1.3, 0.7, 8.0), (1.5, 1.4, 0.7)), ((0.2, -1.4, 7.8), (1.3, 1.3, 0.65))): - m.blob("leaf", c, s, sub=1, jitter=0.15) - - -def forest_bush(): - """Undergrowth and round crowns that fill the canopy.""" - m = Mod("forest_d", ground=True, ao=2.0) - m.cyl("bark", 0, 0, 0, 0.16, 0.1, 1.0, seg=5, smooth=False) - for c, s in (((0, 0, 1.5), (1.5, 1.4, 1.2)), ((1.0, 0.4, 1.1), (1.0, 0.9, 0.85)), ((-0.9, -0.3, 1.2), (1.0, 1.0, 0.9))): - m.blob("leaf", c, s, sub=1, jitter=0.14) - - -def forest_far(): - """A clump of canopy for distant woods: no trunk, two blobs.""" - m = Mod("forest_e", ground=True, ao=2.5) - m.blob("leaf", (0, 0, 1.6), (1.7, 1.6, 1.3), sub=1, jitter=0.2) - m.blob("leaf", (0.7, 0.4, 2.4), (1.1, 1.1, 0.9), sub=1, jitter=0.15) - - -def rock(name, seed_scale): - m = Mod(name, ground=True, ao=1.5) - m.blob("rock", (0, 0, 0.35 * seed_scale[2]), seed_scale, sub=1, jitter=0.18) - - -def bridge(): - """A steel truss road bridge, 44 m along x, deck top at road level.""" - m = Mod("bridge", ao=3.0) - L, W, H, panels = 44.0, 11.0, 5.5, 11 - m.box("concrete", -L / 2, -W / 2, -0.8, L / 2, W / 2, 0.06, bevel=0.04) - m.face("deck", [(-L / 2, -W / 2 + 1.4, 0.065), (L / 2, -W / 2 + 1.4, 0.065), (L / 2, W / 2 - 1.4, 0.065), (-L / 2, W / 2 - 1.4, 0.065)], out=Z) - for sy in (-1, 1): - m.box("concrete", -L / 2, min(sy * W / 2, sy * (W / 2 - 1.4)), 0.06, L / 2, max(sy * W / 2, sy * (W / 2 - 1.4)), 0.24) - # Under the deck: girders and cross beams. - for y in (-W / 2 + 1.5, 0, W / 2 - 1.5): - m.box("steel", -L / 2, y - 0.2, -1.6, L / 2, y + 0.2, -0.8) - step = L / panels - for sy in (-1, 1): - y = sy * (W / 2 - 0.15) - m.box("steel", -L / 2, y - 0.2, 0.0, L / 2, y + 0.2, 0.55) - m.box("steel", -L / 2 + step, y - 0.2, H - 0.45, L / 2 - step, y + 0.2, H) - for i in range(panels): - x0, x1 = -L / 2 + i * step, -L / 2 + (i + 1) * step - top0, top1 = max(-L / 2 + step, min(L / 2 - step, x0)), max(-L / 2 + step, min(L / 2 - step, x1)) - if i == 0: - m.strut("steel", (x0, y, 0.3), (x1, y, H - 0.2), 0.32) - elif i == panels - 1: - m.strut("steel", (x0, y, H - 0.2), (x1, y, 0.3), 0.32) - else: - a, b = ((x0, y, 0.3), (x1, y, H - 0.2)) if i % 2 else ((x0, y, H - 0.2), (x1, y, 0.3)) - m.strut("steel", a, b, 0.24) - m.strut("steel", (x1, y, 0.3), (x1, y, H - 0.2), 0.16) - m.strut("metal", (-L / 2, y - sy * 0.35, 1.0), (L / 2, y - sy * 0.35, 1.0), 0.08) - for i in range(1, panels): - x = -L / 2 + i * step - m.strut("steel", (x, -W / 2 + 0.15, H - 0.2), (x, W / 2 - 0.15, H - 0.2), 0.18) - if i < panels - 1: - m.strut("steel", (x, -W / 2 + 0.15, H - 0.2), (x + step, W / 2 - 0.15, H - 0.2), 0.1) - for sx in (-1, 1): - x = sx * (L / 2 - step) - m.box("steel", x - 0.25, -W / 2 + 0.1, H - 1.4, x + 0.25, W / 2 - 0.1, H - 0.45) - # Stone abutments down into the banks. - x0, x1 = sorted((sx * L / 2, sx * (L / 2 - 3.5))) - m.box("stone", x0, -W / 2 - 0.6, -6.0, x1, W / 2 + 0.6, -0.8, skip="b", bevel=0.05) - for sy in (-1, 1): - m.box("stone", sx * L / 2 - 0.5, sy * (W / 2 + 0.1) - 0.5, 0.0, sx * L / 2 + 0.5, sy * (W / 2 + 0.1) + 0.5, 1.6, bevel=0.04) - m.cyl("metal", sx * L / 2, sy * (W / 2 + 0.1), 1.6, 0.06, 0.06, 2.2, seg=6) - m.box("shopfront", sx * L / 2 - 0.18, sy * (W / 2 + 0.1) - 0.18, 3.8, sx * L / 2 + 0.18, sy * (W / 2 + 0.1) + 0.18, 4.15) - - -# ---- trees ------------------------------------------------------------------ - - -def trunk(m, h, r=0.17, role="bark"): - m.cyl(role, 0, 0, 0, r, r * 0.6, h, seg=7) - - -def branch(m, role, a, b, r=0.07): - a, b = Vector(a), Vector(b) - d = b - a - M = Matrix.Translation(a) @ d.to_track_quat("Z", "Y").to_matrix().to_4x4() - m.cyl(role, 0, 0, 0, r, r * 0.6, d.length, seg=5, M=M) - - -def tree_round(): - m = Mod("tree_a", ground=True, ao=2.0) - trunk(m, 2.4) - branch(m, "bark", (0, 0, 1.6), (0.8, 0.3, 2.6)) - branch(m, "bark", (0, 0, 1.8), (-0.7, -0.3, 2.8)) - for c, r in (((0, 0, 3.3), 1.3), ((0.8, 0.35, 2.75), 0.95), ((-0.75, -0.2, 2.85), 1.0), ((0.1, -0.8, 2.9), 0.9), ((-0.15, 0.6, 3.85), 0.85)): - m.blob("leaf", c, (r, r, r * 0.88), sub=2, jitter=0.11) - - -def tree_conifer(): - m = Mod("tree_b", ground=True, ao=2.0) - trunk(m, 1.2, 0.15) - for i, (r, z) in enumerate(((1.55, 0.7), (1.3, 1.6), (1.05, 2.45), (0.8, 3.25), (0.52, 4.0))): - m.cyl("leaf", 0, 0, z, r, 0.05, 1.5 - i * 0.12, seg=10, smooth=False, M=Matrix.Rotation(i * 0.6, 4, "Z"), jitter=0.1) - - -def tree_poplar(): - m = Mod("tree_c", ground=True, ao=2.0) - trunk(m, 1.6, 0.14) - m.blob("leaf", (0, 0, 3.4), (0.95, 0.95, 2.4), sub=2, jitter=0.12) - m.blob("leaf", (0.25, 0.1, 2.2), (0.7, 0.7, 1.1), sub=2, jitter=0.08) - - -def tree_bush(): - m = Mod("tree_d", ground=True, ao=2.0) - trunk(m, 1.6, 0.2) - branch(m, "bark", (0, 0, 1.3), (0.9, 0.4, 2.1)) - branch(m, "bark", (0, 0, 1.4), (-0.8, -0.4, 2.2)) - for c, s in (((0, 0, 2.55), (1.6, 1.5, 0.95)), ((0.95, 0.45, 2.25), (1.0, 0.9, 0.72)), ((-0.85, -0.5, 2.35), (1.1, 1.0, 0.78)), ((0.1, 0.2, 3.15), (1.0, 1.0, 0.68))): - m.blob("leaf", c, s, sub=2, jitter=0.1) - - -def tree_birch(): - m = Mod("tree_e", ground=True, ao=2.0) - trunk(m, 3.8, 0.11, "birch") - branch(m, "birch", (0, 0, 2.2), (0.6, 0.2, 3.2), 0.05) - branch(m, "birch", (0, 0, 2.6), (-0.5, -0.3, 3.5), 0.05) - for c, r in (((0, 0, 4.1), 0.7), ((0.6, 0.25, 3.4), 0.55), ((-0.5, -0.3, 3.6), 0.6), ((0.1, 0.45, 3.0), 0.5), ((-0.2, -0.1, 4.7), 0.45)): - m.blob("leaf", c, (r, r, r * 1.2), sub=2, jitter=0.08) - - -def tree_cherry(): - m = Mod("tree_f", ground=True, ao=2.0) - trunk(m, 1.5, 0.18) - for end in ((1.1, 0.3, 2.3), (-1.0, 0.4, 2.4), (0.2, -1.0, 2.3), (0.1, 0.5, 2.8)): - branch(m, "bark", (0, 0, 1.3), end, 0.08) - for c, s in (((0, 0, 2.7), (1.5, 1.5, 0.85)), ((1.1, 0.35, 2.45), (0.9, 0.85, 0.6)), ((-1.0, 0.4, 2.55), (0.95, 0.9, 0.62)), ((0.2, -0.95, 2.45), (0.85, 0.85, 0.6)), ((0.0, 0.2, 3.25), (0.9, 0.9, 0.55))): - m.blob("blossom", c, s, sub=2, jitter=0.1) - - -# ---- ambient occlusion and export -------------------------------------------- - - -def hemisphere(n): - """Cosine-weighted directions about +Z (Hammersley points).""" - out = [] - for i in range(n): - u = (i + 0.5) / n - bits, x, f = i, 0.0, 0.5 - while bits: - x += f * (bits & 1) - bits >>= 1 - f *= 0.5 - r, a = math.sqrt(u), 2 * math.pi * x - out.append(Vector((r * math.cos(a), r * math.sin(a), math.sqrt(max(0.0, 1 - u))))) - return out - - -DIRS = hemisphere(64) - - -def bake_ao(m): - bm = m.bm - bm.normal_update() - probe = bm.copy() - if m.ground: - g = [probe.verts.new(p) for p in [(-80, -80, -0.002), (80, -80, -0.002), (80, 80, -0.002), (-80, 80, -0.002)]] - probe.faces.new(g) - tree = BVHTree.FromBMesh(probe) - probe.free() - layer = bm.loops.layers.float_color.new("Color") - R = m.ao - for f in bm.faces: - n = f.normal - c = f.calc_center_median() - t = n.orthogonal().normalized() - b = n.cross(t) - for loop in f.loops: - p = loop.vert.co.lerp(c, 0.03) + n * 0.003 - occ = 0.0 - for d in DIRS: - hit = tree.ray_cast(p, t * d.x + b * d.y + n * d.z, R) - if hit[0] is not None: - occ += 1.0 - hit[3] / R - ao = 1.0 - 1.1 * occ / len(DIRS) - ao = max(0.25, min(1.0, ao)) ** 1.3 - loop[layer] = (ao, ao, ao, 1.0) - - -def material(role): - mt = bpy.data.materials.get(role) - if mt: - return mt - mt = bpy.data.materials.new(role) - nt = mt.node_tree - if nt is None: - mt.use_nodes = True - nt = mt.node_tree - bsdf = next(n for n in nt.nodes if n.type == "BSDF_PRINCIPLED") - col = nt.nodes.new("ShaderNodeVertexColor") - col.layer_name = "Color" - mul = nt.nodes.new("ShaderNodeVectorMath") - mul.operation = "MULTIPLY" - mul.inputs[0].default_value = PREVIEW_COLORS.get(role, (0.8, 0.8, 0.8)) - nt.links.new(col.outputs["Color"], mul.inputs[1]) - nt.links.new(mul.outputs[0], bsdf.inputs["Base Color"]) - if role in ("window", "glass", "railglass", "metal", "gold"): - bsdf.inputs["Roughness"].default_value = 0.15 if role != "gold" else 0.3 - bsdf.inputs["Metallic"].default_value = 0.6 - if role in ("sign", "shopfront", "lobby", "crownlight"): - bsdf.inputs["Emission Color"].default_value = (*PREVIEW_COLORS[role], 1) - bsdf.inputs["Emission Strength"].default_value = 1.5 - return mt - - -def finish(m): - bmesh.ops.dissolve_degenerate(m.bm, dist=1e-5, edges=m.bm.edges[:]) - bake_ao(m) - me = bpy.data.meshes.new(m.name) - m.bm.to_mesh(me) - m.bm.free() - for r in m.roles: - me.materials.append(material(r)) - ob = bpy.data.objects.new(m.name, me) - bpy.context.scene.collection.objects.link(ob) - for k, v in m.extras.items(): - ob[k] = v - attr = me.color_attributes.get("Color") - me.color_attributes.active_color = attr - me.color_attributes.render_color_index = me.color_attributes.active_color_index - tris = sum(len(p.vertices) - 2 for p in me.polygons) - print(f" {m.name:18s} {tris:6d} tris {', '.join(m.roles)}") - return ob - - -MODS = [] - - -def build(): - for v in "abc": - cottage_body(v) - cottage_roof(v) - for v in "ab": - shop_ground(v) - shop_floor(v) - shop_roof(v) - apt_floor(v) - apt_roof(v) - office_floor(v) - office_roof(v) - apt_ground() - apt_ground("c", wall="brick") - apt_floor_c() - apt_roof("c", wall="brick") - cottage_body_d() - cottage_roof_d() - shop_ground_c() - shop_floor_c() - office_floor_c() - lm2_ground() - for t in (1, 2, 3): - lm2_floor(t) - lm2_ledge(1) - lm2_ledge(2) - lm2_crown() - crane_base() - crane_mast() - crane_slew() - crane_jib() - crane_jib_tip() - crane_counter() - crane_trolley() - crane_hook() - crane_load() - for name, L, Wd, bh, c0, c1, sign in (("car_sedan", 4.4, 1.8, 0.95, -0.9, 1.25, False), ("car_hatch", 3.8, 1.75, 0.95, -0.7, 1.6, False), ("car_taxi", 4.5, 1.82, 0.95, -0.9, 1.3, True)): - car(name, L, Wd, bh, c0, c1, sign=sign) - van() - bus() - person() - office_ground() - office_setback() - lm_ground() - for t in (1, 2, 3): - lm_floor(t) - lm_ledge(1) - lm_ledge(2) - lm_crown() - tree_round() - tree_conifer() - tree_poplar() - tree_bush() - tree_birch() - tree_cherry() - forest_broadleaf() - forest_conifer() - forest_emergent() - forest_bush() - forest_far() - rock("rock_a", (1.2, 1.0, 0.8)) - rock("rock_b", (0.9, 1.3, 1.1)) - bridge() - cottage_body_e() - cottage_roof_e() - cottage_body_f() - cottage_roof_f() - shop_ground_d() - shop_roof_d() - factory_ground() - factory_roof() - town_ground() - town_floor() - town_roof() - round_ground() - round_floor() - round_setback() - round_roof() - lm3_ground() - lm3_floor() - lm3_crown() - tvt_base() - tvt_shaft() - tvt_pod() - tvt_spire() - fountain() - bandstand() - bench() - goal() - bleachers() - - -def preview(objs, path): - """A Cycles render of assembled buildings, to check the kit by eye.""" - scene = bpy.context.scene - col = bpy.data.collections.new("preview") - scene.collection.children.link(col) - - def put(name, x, y, z, sx=1.0, sy=1.0): - o = bpy.data.objects.new(name + "_p", objs[name].data) - o.location = (x, y, z) - o.scale = (sx, sy, 1) - col.objects.link(o) - - def tower(x, ground, floor, roof, n, fh): - put(ground, x, 0, 0) - for f in range(1, n): - put(floor[f % len(floor)], x, 0, f * fh) - put(roof, x, 0, n * fh) - - put("cottage_body_a", -40, 0, 0) - put("cottage_roof_a", -40, 0, COTTAGE[2]) - put("cottage_body_d", -40, 12, 0) - put("cottage_roof_d", -40, 12, COTTAGE[2]) - put("cottage_body_b", -40, -12, 0) - put("cottage_roof_b", -40, -12, COTTAGE[2]) - tower(-28, "shop_ground_a", ["shop_floor_a"], "shop_roof_a", 3, SHOP[2]) - put("shop_ground_c", -28, -12, 0) - put("shop_floor_c", -28, -12, SHOP[2]) - put("shop_roof_b", -28, -12, 2 * SHOP[2]) - tower(-16, "apt_ground", ["apt_floor_a"], "apt_roof_a", 6, APT[2]) - put("apt_ground_c", -16, -12, 0) - for f in range(1, 5): - put("apt_floor_c", -16, -12, f * APT[2]) - put("apt_roof_c", -16, -12, 5 * APT[2]) - fh = OFFICE[2] - put("office_ground", -3, 0, 0) - for f in range(1, 9): - put("office_floor_a", -3, 0, f * fh) - put("office_setback", -3, 0, 9 * fh) - for f in range(9, 13): - put("office_floor_a", -3, 0, f * fh, 0.78, 0.78) - put("office_roof_a", -3, 0, 13 * fh, 0.78, 0.78) - put("office_ground", -3, -12, 0) - for f in range(1, 7): - put("office_floor_b", -3, -12, f * fh) - put("office_roof_b", -3, -12, 7 * fh) - S, fh = LANDMARK - put("lm_ground", 12, 0, 0) - z = fh - for t, n in ((1, 9), (2, 6), (3, 4)): - for _ in range(n - (1 if t == 1 else 0)): - put(f"lm_floor_{t}", 12, 0, z) - z += fh - if t < 3: - put(f"lm_ledge_{t}", 12, 0, z) - put("lm_crown", 12, 0, z) - for i, name in enumerate(["tree_a", "tree_b", "tree_c", "tree_d"]): - put(name, -46 + i * 4, -24, 0) - - bpy.ops.mesh.primitive_plane_add(size=300, location=(0, 0, 0)) - ground = bpy.context.object - gm = bpy.data.materials.new("ground_p") - gb = next(n for n in gm.node_tree.nodes if n.type == "BSDF_PRINCIPLED") - gb.inputs["Base Color"].default_value = (0.3, 0.42, 0.22, 1) - ground.data.materials.append(gm) - sun = bpy.data.objects.new("sun", bpy.data.lights.new("sun", "SUN")) - sun.data.energy = 4 - sun.rotation_euler = (math.radians(50), math.radians(10), math.radians(-35)) - col.objects.link(sun) - world = bpy.data.worlds.new("w") - scene.world = world - bg = world.node_tree.nodes.get("Background") if world.node_tree else None - if bg is None: - world.use_nodes = True - bg = world.node_tree.nodes["Background"] - bg.inputs["Color"].default_value = (0.55, 0.65, 0.8, 1) - bg.inputs["Strength"].default_value = 0.8 - cam = bpy.data.objects.new("cam", bpy.data.cameras.new("cam")) - col.objects.link(cam) - aim = bpy.data.objects.new("aim", None) - col.objects.link(aim) - track = cam.constraints.new("TRACK_TO") - track.target = aim - scene.camera = cam - scene.render.engine = "CYCLES" - scene.cycles.samples = 48 - scene.cycles.use_denoising = False - scene.render.resolution_x, scene.render.resolution_y = 1400, 900 - stem = path.rsplit(".", 1)[0] - for tag, loc, target, lens in ( - ("wide", (-75, -80, 55), (-8, 0, 18), 32), - ("near", (-52, -34, 14), (-30, -4, 5), 35), - ("top", (0, -40, 70), (3, 0, 45), 40), - ): - cam.location, aim.location, cam.data.lens = loc, target, lens - scene.render.filepath = f"{stem}-{tag}.png" - bpy.ops.render.render(write_still=True) - - -def main(): - bpy.ops.wm.read_factory_settings(use_empty=True) - build() - print(f"city kit: {len(MODS)} pieces") - objs = {m.name: finish(m) for m in MODS} - bpy.ops.export_scene.gltf( - filepath=OUT, - export_format="GLB", - export_extras=True, - export_yup=True, - export_texcoords=True, - export_normals=True, - export_vertex_color="ACTIVE", - export_all_vertex_colors=False, - export_materials="EXPORT", - export_image_format="NONE", - ) - print(f"wrote {OUT}") - if PREVIEW: - preview(objs, PREVIEW) - - -main() diff --git a/ui/blender/real/bridge.py b/ui/blender/real/bridge.py index f125188..dfe5251 100644 --- a/ui/blender/real/bridge.py +++ b/ui/blender/real/bridge.py @@ -1,7 +1,6 @@ # The river bridge for the realistic city: a riveted steel Pratt through -# truss carrying the road out of town, replacing the kit's truss. Same -# footprint as the kit's: 44 m along x, 11 m wide, the road deck at the -# origin's height, stone abutments down into the banks. +# truss carrying the road out of town: 44 m along x, 11 m wide, the road +# deck at the origin's height, stone abutments down into the banks. # # Two trusses (built-up chords, I-section verticals, flat-bar diagonals, # gusset plates at the joints) stand on the deck's edges; portal frames diff --git a/ui/blender/real/build.py b/ui/blender/real/build.py index ad1c406..91c49cf 100644 --- a/ui/blender/real/build.py +++ b/ui/blender/real/build.py @@ -6,8 +6,7 @@ # Writes tex/*.png (the shared texture library; --no-tex skips it, but a # model's own textures are always made with it), and per model .glb # (pieces as nodes, materials named by role) and _ao.png (AO baked on -# its lightmap UVs). The output is git-ignored; the app falls back to the -# low-poly kit for any model that is missing. +# its lightmap UVs). The output is git-ignored; the city needs every model. import importlib import os import sys diff --git a/ui/blender/real/civic.py b/ui/blender/real/civic.py index 514508c..ce433fa 100644 --- a/ui/blender/real/civic.py +++ b/ui/blender/real/civic.py @@ -1,5 +1,4 @@ -# Civic props for the realistic city: what the kit still drew in low poly -# round the buildings. The water tower (the Hamlet's water need), the tower +# Civic props for the realistic city, round the buildings. The water tower (the Hamlet's water need), the tower # crane and scaffolding of construction sites, the rubble of a destroyed # lot, the parks' fountain, bandstand, goals and stand, and the people. # @@ -7,9 +6,8 @@ # water_tower an elevated steel tank on four battered legs, 20.6 m # crane_base, crane_mast, crane_slew, crane_jib, crane_jib_tip, # crane_counter, crane_trolley, crane_hook, crane_load -# the kit's tower crane at the kit's sizes, so its anchors -# (apex, beacon, end) still hold: the app takes them from -# the kit and the geometry from here +# a tower crane; its anchors (apex, beacon, end) are +# CRANE in models.ts: move them with the geometry # scaffold one bay of tube-and-fitting scaffold, 2.4 m along x, one # 2 m lift tall (the app stretches it to a storey), deck at # its foot; inner standards at y = 0.65, outer at y = -0.15 @@ -17,7 +15,7 @@ # rubble_wall a broken brick wall, 3.2 m long, standing on its foot # rubble_slab a broken floor slab with its rebar out, 2.6 x 1.8 m # rubble_beam a steel I-beam bent in the fire, 4.6 m -# fountain, bandstand, goal, bleachers the parks' pieces, kit sizes +# fountain, bandstand, goal, bleachers the parks' pieces # person a pedestrian, 1.75 m (roles skin, hair, shirt, pants: # the app colours each one) # Roles: tankpaint, tankband, crane, scaffboard, char, galv, dark, grate, concrete, trim, carglass, diff --git a/ui/blender/real/street.py b/ui/blender/real/street.py index 8a89d4b..9db7073 100644 --- a/ui/blender/real/street.py +++ b/ui/blender/real/street.py @@ -1,6 +1,5 @@ # Street furniture for the realistic city: lights, traffic signals, fences -# and walls, and the small things on a pavement. Replaces the kit's box -# lamps and the plain boxes the app drew for fences. +# and walls, and the small things on a pavement. # # Pieces (base at the origin; the "front", -y here and +z in the app, is the # side that faces the street): diff --git a/ui/blender/real/trees.py b/ui/blender/real/trees.py index 966e06c..f6b5ef4 100644 --- a/ui/blender/real/trees.py +++ b/ui/blender/real/trees.py @@ -1,5 +1,4 @@ -# Trees, bushes and hedges for the realistic city, replacing the kit's -# low-poly blobs. Real sizes: street and garden trees are 5-12 m tall. +# Trees, bushes and hedges for the realistic city. Real sizes: street and garden trees are 5-12 m tall. # # Trunks and branches are tapered tubes grown recursively from a seed, down # to a level of twigs and cut short at the crown's surface; the leaves are @@ -621,8 +620,8 @@ def _species(): ("shrub", lambda m, R: bush(m, R, 0.7, 1.0, 130, 0.36)), ("flowers", lambda m, R: bush(m, R, 0.65, 0.55, 110, 0.3, role="bloom")), ("hedge", lambda m, R: hedge(m, R)), - # The woods: light trees at the kit's own sizes (land.ts scales them - # as it scaled the kit's forest_a-e): broadleaf, conifer, rainforest + # The woods: light trees at a base size land.ts scales per instance + # (up to a tree, or a clump far out): broadleaf, conifer, rainforest # giant, undergrowth, and a far clump standing for several trees. ("forest_a", lambda m, R: light_tree(m, R, 5.0, 1.6, 1.8, 44, 1.1)), ("forest_b", lambda m, R: light_conifer(m, R, 5.6, 1.7)), diff --git a/ui/blender/real/vehicles.py b/ui/blender/real/vehicles.py index 2cc2b41..288e1d8 100644 --- a/ui/blender/real/vehicles.py +++ b/ui/blender/real/vehicles.py @@ -1,6 +1,5 @@ # Vehicles for the realistic city: the cars that park on drives and in -# bays and drive round the blocks (ui/src/city/traffic.ts), replacing the -# low-poly kit's four cars and bus. +# bays and drive round the blocks (ui/src/city/traffic.ts). # # Built the way car models are: a coarse cage of cross-sections along the # car (underbody, rocker, side, shoulder, belt, roof rail, roof), smoothed diff --git a/ui/package.json b/ui/package.json index d80f280..4422095 100644 --- a/ui/package.json +++ b/ui/package.json @@ -7,7 +7,6 @@ "build": "tsc --noEmit && vite build", "test": "bun test", "tauri": "tauri", - "kit": "blender -b --factory-startup -P blender/city_kit.py -- public/city-kit.glb", "models": "blender -b --factory-startup -P blender/real/build.py -- public/models && bun scripts/textures.ts", "textures": "bun scripts/textures.ts", "pack": "bun scripts/pack.ts" diff --git a/ui/public/city-kit.glb b/ui/public/city-kit.glb deleted file mode 100644 index e1308548aeb09ff3d31ceef5e044748abfb8288a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4757160 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
iRn91h%PsF;)8g^Y1?0veusq>Mb%j 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

k*(iGhY`5H?oMQn|4-{L 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%0A|*kffa?4r^TVMFZQ(g^#i zY=UqT?BUV``<-lwa7&;2sBk}*jd5)1Z;d@rwnw-s2$x3jywY=<3R zcEBDjyI@z8mN<6C9w%+FLrEJPyZNoKKgu2mxmU`b*dK+vpmebNnQ-TmoZTm-J@!J` z4|}HUhrLtw_Yd?tBJ7CWP&)eu`-dSs%s&J>qa5mYLDNl(&np%*H$NXt-b%X|F@Ih-~X*x-`CBm zHcRd?IiD5wtEk^ZTx;H#+y!%FqJBv(dYxBmUYy(ob4DUPx#)FXt!YxVne^#Ax#)FX zt)Z`CpIr1hZ>ffQ_-pG)z2?-4Uec+Dzk%4-JWWGA{0&8~x#ZOva`;;%dd(%T){sM+ z=rxzTqM?79$L&*;S8M2>=*dM-jc~1@f1)SX8sS<)|3pu&HNv%qbrU_g)(9`vP!E4u zN2}MIX`+{O>QN`&FRRx)O+!8E#QtFQnoC}-AxE9^qSsvVY7IHGiC%N&^^!kzeXssi z^?y~rw5Ky*Y%3xXgxBn3&(ZIs$X|)Vb@CJ zJq5?`B#zdbt3=)rI65Mo>xFem;%MElj=0u5=!Z4TxTe@Wc5SmLrcX>~9IXpBFkZJU zin$(Lv~C;YLAg6dEU)N>wbLZ7oG`P3=@N5IJYJWWYvS=b<9S%yjsEXw*M5s)`pxvn zf391{HO~enakSCcaKHh!?Et#SgboY2(nq&DAb3Hbu zN9(e!kM-P^qYXArV*1T?XUuiaxL)3l{T@!@XuZ5UP)2L`a4P&-563x49Ie}SDz2@L zdR&Qo>mmQ`Ni6A6{096Av2Na{N&FtxYMTci8MCdUb>{{qakSoCZ@cc?6s+;bd*98j z{TIdT6HJfdeR6rMna6eaB(B1mdAxs&|F{0$Szj(&zrcxAqnhpjhF>_j}WBk9za^T>|qsoDRVKKAbw^e5tx z9ZA<3$0IwUXL{uc2PAeP9@&v}t#LfEBYLLyKH-2s+9%?X9ZA<3$0IwUXZoJs^hxYQ zJhCI{TH|oBk5Y>cw|TPOdr!_%fwE^BRi6=HI7GiM9*~Grz-I$ z;*lLmZ?@}2iN^8Dd?|n8#W9JUh(~rLo%(Vf*%3W8Q(qjD)GOkV9ZA<3$0IwUXFB_z zsuy@tFPpA4jwki9dYA5bc%EXLm3*G;^F#aTTx%jO{@__j?2z*w&`vt9JgX zRuVhpVkezf^0|yP5f?jnR;t7wa|4C=ET^1nO>w`)vy${5a><*{EBVaDnutri@T?^DA{RU9ypqpltckeTL7dnj7dz?P z)+Mn+4WFO59bz77BpvOYXdJiiu|&^wJ||));*lLm*BZwoJECVgpA)eY@yL#(YmMWP z9nmwL&xY8Ecw|S?wZ`$tj_8@r=SS>BJhCI{TH|1tRM|LD#YaEa4h@R=_LwT_i@yL#(qdz7Z$L)JQ>91tRC-t)FTH|<9FK9Hkzf-YI z`+LN9l(mEBEQM=L#Kj*xD~TO)v6Ig2Z&s{{xY)t7!uP!OlU(eibNibWYa%Xo@T??u z$i+@Nx4&PB9hcYseg)zWo|{1Iq;vb56>B0c{@__j?2wC{bZ&pM5<4!h=iyn&i$COI zC!O2htXLCq@dwXJVuxJpq;vcGmDq84?eA1_-)WnD&cmN{9`)5oQ`~RytR!~G#ZEf6 zzge*+;!-a>D@nb`#ZEf6zge*+;$jDJVuxJpq;p%B#11tFK6$=v2gKEKuInV4EY9|% zJ!P|u$9Zjf2G7TK@+>clDX_+YgpK2c|C9Az{xvKwbz0Q-Qhr){Q zKcAH>eQLTYQ(q_7=Tcf`dc8lkiR#-Y>M5D+kkzmLoBc=kRn3!r3;VT6*S|HI7uiw1 zW~J-0G%wPlElU5CKEK)r%_X1J*ZX6eqrQEj-vZs=bem{i*Z!mRS-ej6Ro^f27wM^X zveH%G*ZIixx%N3V9rooQ_>pQyG#PdzPkkJ0 zgZh3@{~Xl62kPGg|9`#*WSrxi0fd_q*Jcjk&i^@^aN{HY=tsEg-DeW+yw426>D%@r z-1Tc_5bpf+S%lO7)$OlVNx1rb^#b9}yUZqBeP!JZQPi|f&DTc|qBiEEy9syR^nSwG zKf62OuJ^u=Fy_hSgfZt%BAj04)k_Xpr>6A^qI{j2wFeT$6lM{U3+tK8A>6t2H`C9; zd^nSE*Gt#;5dBAe31eQWBAot70Ne>a__Rr`^V4a{l33vVXNrXEWf22Rxb{(10^#^*tKsdV-<`Axb zw(d{3>-)_j-1)0B38(+FFX67QI)iZM&1Vr#|5vv^elX$c_s49)oiCe1xcbVv6{4tV zotKS!5u!%FxSMe2w>?5Q`#1L_j2XRxFlN|Ygws!ZkZ^kG&!VVlotKvf5XM|Shmc$- z=Xt`NOaGkPk1*z{nS{H3>kPu3i++cG1m1fy33vUUvj}%C`oFsUp9d1g{Qd&r>bK|x z!ktTf<$l$69hR4mAkh9331{#2`w7=i#Qw8A31iw#CY*lH$%H!>z4Ygr)?pbwfN=Tm zA3(T%DE1_NaRA};;|CB<-+w2BTEH`^MVs(}q zupZ0RIIhJCEVpB&m0NH`>#*F1by)7h8Z5VAEtZK0Ct`(`|Nquu`2Z`eyoV!Nhvjpu z!}7T|AFH!`hV@uJ#PKm!U|E2bR=&g$t;6yI)?xVpYp{HcwOAG*T!a-`e#BZUzasoK zUWa7~)?rzKHCTSZS}aQuF2xEh|IT$-w#7OtEwC0#3#`4e3)WWI10mN{*&6Gvv_jYl zE3!1jnk>5`+#Tz$Y=gC0+9GU=HCeXD$}H^=w!_LT80%J5JclA03&$~Vae6YYFVgCN zFV>Zpe{XPalytWHfW6_L=ONDX(42GL<8(XUKTQ+st9UKeYp!iFy-MlD=Ko{wJK(G) zw*O}$qJp4;1sis;D_{YHO%w|Xh*TA63R0|KFQ`cGOYa>8v7n+zQP?O7C{0Af?z2Ci z^(i($=YPJFImz7IWZ8XJfB#qRJ)cazIr*ONoS96ryLXd`&ClXk`7j@vjI|y((RWQd z!`w$Z<6*!3;s2AsR~#;GAM4p1trz?M3g`IOuleW6|F5-mEa|u|)$>+hECJ*E2r$MC zjRrU$%uuQ^--UVnGX(Q zn}b}L4{UQ7$2kFC_mAP*Soed`4E*3z<-J(n#u$UF&wlVJM;sTeZ{sA6$=_o>twW4h ziZLHP*RlDZg#VLrP3r5=N7ozv*w^QOcl__3U-5mqnC3p%cYZau0nLrT>#v(0?!u4t z*G;R?d=3ZDa#*;=oDlG1y@lpxK-}>(cLT2x2Y(RXf##$5PS4H2>$mir79D6_3e0U$ zi*(PT#SPcNd=j-tAM;9dB|ql%xG7u*^I>$Qecko^8^L@U?WhjSuhEV)F|WosdcE^_ zS#as%0-6`2YPf##!Xs#23|W9R=DoO-_F>)&UO!3u;1AZA*8=UwycWSaX#WVS{n*!q z`XN}qMRQ?bP718I(A*rywNa#B7_Q%%{k`^M9rVv`)OPewu>QKKpthrb1od+-(#Cut znDZl82lIwt?ho|O5i}pkGMe|IAY5bK4EVAB|Mh!EzFzb|`u7X}SN-#!KJUagJ&W|u z4g6dWaPWI7`|ovI8ov+`?%>67Pj_Lc6W~CH{orTgK!^F@h%HAg!xb0#1US%Pzs-qo zpu>FQuV?8H4t2EO=0rHu(R}#ta~JC0aga}d10D9;oCpUx%!mKmo<*TffCC-&+nfjo zI?RWk^68w)|>SO4t+KQQ_Z`pMYl1eo)ou^H+BvraPZfH7`3 z0cIT(JQ5-v+whfLSLQcfi;;oB*>9 zjm=O8n01nI2b>3?P84f@e-j*c9Ag|W)RT>EPUbkFv1!Iq2aMk^HW}NT0CT%&Z2H_k zz??%e?tt^aa01Lav<`KEStl9mwuCz1V7!`sFgW0_pZYuGL|9)pLO%Q$m#h=uK!^P{ zC&Gaa^Wn$1WSsy9I_$SO5e{^iZ~V(F9m1iG_S>8YhdP=MKgK2N1US%Pzs-qopu>Fl zF&0@Tz=00?ZBB#(9p=MN$IN4$00%nkr{f=TBCM}n;W&XGWSszq?b3dm6XCF3#Idoy4&%C^{WO+wP0%{YSYMM3C%~K! zjm=O8n01n|z9xq{QLGR&HgR3m`2e#{G7hh+A)oWX7`JrlSvmx^cf#A5~7*nqa)RT>EPUbkFu^H+Bb8Ir! z*JQ&9Ft>}wrpNsQ%sR2%N@G z^xI=RhST_o{(L_AV4!dQ7y8F;qm9FHOXHy={`lDCcwX!AY>llnzg?G&Gx&6D;-C2W zlFuizhyGXkhg+R?{B=K+U>t@z)>yO0Bd}eE%}?}Ob=v#$`2;-|?~|}Uso(5E*C!|0_kXX#0p4VG;kY)^FJs7S(^#E3jyL*~_pfAAT;989RH< z_oqu?%vS3CnXqWP@*G&C?>B`-`}N_Np;V*aVM^`$Ff8Kpb6Xt2&-t$U9hUu^?@d?2 zlsf5U7)L2ZFYG0Yws}1Cz5=FH?-yXv{w_W&+GhUMtzk+zMX+f9m=|EtHuL{#{oC8a zl)7^TEULfJE3jyr^WpyF=Ww|n)1Jd^&>W`Jmos6}ahf^@maX5bDU9AnJ{=bA|8XuX z+U9(Cyp{Ah+@spTBAtg=#ShT&|heiCmTf?IL=NG}E?KfY5 zMf|^7-@6(X)xY;DShRijE3haZey)%iJ9|#{y5=xuD|OKi}j+OhF`E8oRl-g$&EYiPl z4lFv3%zwHmOsVNJU=hF1!?0+Z`8?is_8jX?ZDCP-VOv-Zklbbima zu!!HjEi9eCq%ADsU)L6v&i~JRjFxL4ds%U$9=alhz8Wgqc?xLfoRy{YUidWybcfEYyOAkj|@7DGfKm4#xM=r4wf z;ZzP61L+CY|I6oCpB0P6GqfxeOT}|yIhD)B^J0-$CW@#m5=(?HUKB4;`I2}+tQ4#0 zmywmUtQIT8D`E|mYsAZ9tynK!qw+PePP{HQi8rZyQ@kNIh|OXPm0QF{dV=-Od5-l5 zdQNpaJy0&Ydst0z87AwPI{@eDi%IVtslhEaF7i=0F=C@bNqu^X*vd!AEPF@9P2_@iSsA zj_2vnpe?C*Wg@FyF>OY{Wr(@Bt_6L&A2f%|Uzc0Y5xO zgzZ?H11>(`hhu=S9g98qXiaKQgv}W6;fZiKKFJ@BZH;YCgl$fcM^IOIj>KX!IaD=$ zbiet5rj5a6e&E-1I=A2t_%_bw1bltm4d2E=tj#g{bR0r`3kR__C%}5#a{gXC*5(9Q zpBIL2W6xV$^&uae&YkCYv}jB|?SHU)Tlk8_xNb5(2}2V);1q|E!~6?J>biibO<}#o zVb(-!8V=gn!He{>G5Qd-B2VIJOnMq~Kfs@a5zB2%!+~bdSH)vw5ga2R;)XfE&p9Mv z^gr{HFy{tN8fJa;WpUUXYt2c*tRM7!*gwAQhdwn?pf30cqW{Bs;o}_Qm~{e;KtGOy zZQUnfp77azt~c@{ixEEZFvmI-^LPU{4F~Pl$6f1iU)lbk{XyFUf6ynu$idDh37cab z>Z2{J56rn0hq+$pb3R7LGdXy~NyR1y%}K(fsbfjgOT*Ad?^6z%0|Y+Ti?}q*n%JL) z1O4!N<(Xp<=FG9E7dYSt*GA;Q{g8%{H#pdzhJ$_Kd8%`O&-NphQqXM={MgdxzSc+k z;746anA^pgXornCx1fDN&T-83LZ9;i2aBoKFAkd=G$#pL$H-5^K~BNB5abb_BRU7l zE6gE|S(Dlk>c?@QA6y^OFxQJ%&Ifg&f4CpgF!~J~iu2PjV!40PFk%ILpc8O{KH+-p ze3CHqiECoBG3N$O8s>VT4-Taxz@OdyA@81j+hH6Qi;)9yH75z9pP>Uz8b)0;Yt|2S z((vM{=ZEeyhFc zH|~cFY~`S1t>eXcYQEL~+^!5ibgbi;i0|3AfX?0O-o%N&d1)AbuYvRC>|bfDC1b?a ztXWfYio=~d9~*L#F!aA_dR$mn5{5qfoO2pRKGery&Wynah7NK7zI)#Sx_$-yP#oqq zf|G>ln|Q5*zDmQ0<+c}xxn1BSVd%rpb){jni`&S3!u7(>I=~|Q^rF8L`IE;%PoN+2 zeG&CV()b8{MU1G=@>q8U`XS#J!MI57hplDK&|`(xu8k36d~Tg}m5XS>y2KpBLL)5} zbukCn)CXUPjZfEU>11%y{I-5^I#v!kUu>uO(0*QQ4*RgS{kE2sL#V-gJI3k<&WHPh z`+?)p4<+I-&&o3+HYLxZG``iAEKX_aVlJ&S^0D-}t$J$vYo6Ge>kF{+saGb-uxZmh%9p+f; zG=20#xLEwqhyAu6n76IAWbv6}uWf9_7Ev8opn*L3Sfu*FVXfkHm}6_&*oxJ4n;g(S z&f))bJWSkJ*)6w5FJb%aT!7;o^64Doe$zIs!yL<3^zQ1)Znq7Ui?Conw6Px_U@UPC z?@RM1=s?%Ca?{&JC)ICsbi0_Fqyr!J<3kuZyH;))brr`!EcU0xLYFy4M{iTRimcrV;{7jfe&yJKgK}}j)gu}=6GozG~#}vtM?-g+xP${>F_?Yc8P=I!tKH~w@c@Z z{Yf17ppg~}9p-SI*tYV|s4LBHbmHyG(g6?k;DdThT^RFv!8Y%sx)S{yr$vg18mbeqRTR>ho8_l-hj-EYkn^8kkbYbcQKa<71do zuNT3Tn)C`Ry*_S7(J~l4U%3vJ&X13K&THK=*v{j*zUvpmqIR;s^J*BqM|l%0J&%(1 zXFOlt-fcZhsa8+J((~rLc3lCBj{7yMVbL}pXXbZZ4U3Lbk85E{@tX69udmnyQ)-$1 zMDaYXzF!B6#zp-2$Mtx-{U(@FJYG3pZWs3lkK-xVz?3?=Gc0N+^O?uTi}l#g{Se>J z=M}Fxzml$bye(M^o%~c}>Ai7X-rlwjM(+Xs4i@RQ{tgyxzq%S0ZRd)%u7fF6|2tTu#(Blp z8@IwD-k+UMyguH3bt^2Yx8i!3QrvHKzJo>k`zToU=XM1v`DfHxm{Koqg++0VzJo>E zoDb(4Uq{T`P?zm6IjiRz*Tl{G|7ak@A|oJr-G;w({1)E0H9tRv2* z83pQz0xAoHD?FM*;9M#(zrcAkuK?y3xPWFBXh849zF5yL(2(Ad-I(5v-H4VZ^oH!F z`aRjr=ndH|L`!-@Hr|qb8NDa_3elR%*5XRhMzj^}sB9{8!7jYZS8E}WVoyyy3=70zE zi~$eOd;z^_j(}b?%fLWdhR_@X*NCgByqabn=p$|rw@`Tt%_K04<`D?qd_7IfrZ-&A z6Z6GW;%S;^U>3dMdMGW0^rr0Ldai-dVjR5%d!blB?dMKcDxPO}MY zq2(>HiQaVm0hJ%noC1HN_g&-d*B{fHuV0|q3W}&Kq8SQ4qjz8bL%-wtXPOz{cOmIH z|2<@R`IFdP?n>pZ@;iDL_UGa&D!-z4V=GZXmXk`9qZtBrp&0~r(EI>9Xf}a84s;_ho-d@68tSQ(C?d`^bIe{_-Gss633`SA7h< zuNrT!u1;^PK1-f03#2E{lNZX1Wg~g1Y$jXDmh_hE6RA8=Hj(?$+pDWlSxr`<_gNoI z@3uZozu$UqdK-2fxi>A9#m6hZHR30D?r}u4NBrl-y0($%Q)v}Z9DsPfE z%Uk80@*a7wyhC0kyHMFh-Ywh79`Z&iZ7nQx_?XsurE^njqHhG`yE$@=| zQ+dDaBd?KdWNRv0%Wkr*yiQ(A<+ZYdyk2&e9jWXnZ;-)rLikQ8c$U>XzwNQVX3f!A z7##L9?%a8}Pa^ceGl9eDzWfV3#_)pA9L9DmV|vcQ2OqJ(tiyi9#<3mCc-`8%zLp^! zVAf$jbmG{KW!$;*O7s6&v}_==I+p&zrx<>ka zM~DSx9ri;fj_p_r*W>;nemzS^`;ATpwqqGjn7G7c9bndBKXl^Qj%D1n^U6>Mn043> zojA5*8LwSim--c-5gst>upc^cY{xP_ot|IQGNc2{I_!r|9NV#sY0QT@z^uc5=)|!d z%UB<8osd3HLml=*Cywn{8*{tBhac-89(%H}&0)-S1-S=0z^s#m5zBtYtV8Ft&I5j6 z)=9!PhcWBWIUVW%vrZC5Ec+R=4xQgL9=TmBUDkm=juFd##;il}Sk6 zI7c}jVAe^(h-E)xOJ|v-v&_=T!X{Sx8M6+Z(?zTU%sNRJvFvBeI&@BlI>4-xgb~Yr z#;ilm*^s zvY#<+lMkOv9rlx+AIFGgKV!zjS)cvj$FUvDI5^J(9bndBKXl^Qj%6I2=Yb9| z>#!d>acsvj4$gCKSNL;>+7kRc3fh&4?O4Xac^>Eh!;ijVKXl^Qj%6I2=Yb9|>#!d> zacsw0n9lQ1hks8%to9q73~a|T4$kvH2N-^|i~Z1vV>^~{aGnP`z^uc5=)|!d%Q!gC z107)2VLx=@*p6i!oaccKFzc`%I&o~rGNv)_L&cmIp$_|@6UTNeW5jD2z2-TF^f{~j z&|wZ^JJ!ZYIzbHf=xYdR;S*rQ#xd6w(Kd)pF27qVAe^(h-E)x)}eDc)B$FlB#c=0GiIIOyfnw1 z&QaEZKaLU0e#VwgJ#H6q>RGW_*u-i-W7eT_+GQPJ)=9#MWj|xqp>sOa0cM>fj9B(F zW*s`GJ}UInNaL2{ePcgL$Li2RrfyIbfUXWj?f72RQH}8rOh1K9KQyCe|a4 zhxsqakK>~Kz=0nT`gjp1=uh|&3oi5FV;!vF2S4(M$1$uIy3j#gSU3mx5gYljl|BCv z_(7fFJUd1wsEc(t2a~fO#DsmTb0DAb2YqYhul=U4d~Pr07U}>qKl1CGeYAn=<@Ta3 z_)Y%4m8bCsIdClP5Bbn%9pFGGsEc*rr@2LF{)}i|9@K^TMvy1`z~JC_V#Ykj3OHu& z63yXxRjgRV==`z9V$FfVntBZI94M%R^C2CL;lskY0dqd!SUG46pQVF(ITm%XruK6_ zmX7uted>c~UKM-Jl=$2zJP(LH?@4@q6P~k!b*N72n_!+4;Ns>n;WP;&cVhR ze5>9xznz1PGx$Zk6|LiW+Bw*mBQ!sskM53q{{-idJ>Kj-v2kg~kIhfRrP8;?en!6J zPt-~CTVvmj1GcyAoD=<|&!2og+!N6{-Y2{V{!${P}#iXM%Nn9OnDyf3ttM)oI6HkCPIdr=gB@F52fSuw94E zPxM=L+WYhQ1U(n;ldwOj-|T%m_2-Y5?xNIj_21e*)UL#FV%p2+uFbKrJ+5pV=Y%>| zKZbnEr>_szHaHv`@{6*4nn!-UHu3Se(r^-ENjL82ZC(c%1f}gmf28(_$vY#~^07|1 zw)Sxh_QmzFk9}b*@!}tyTaq7|F+Xqf+SamtTC>RB8)|6pHSCup}i{kiQP(uLJq(K>j+AzYgTD13S46#GjM@tGDNNf~C)^5wCyuYhWekujm5H z^W*)<+p9XmO5Q(XJHtxO=X(Cr*F!qNO5W}T*T727-`E9~=ckR6i#o$f-al13!%EIi ztM}jCzq}KyO3qKKx3vBN-C#=f>;_Y6khW+(BSyTxun{cEllSxbtcEb9 zSoahK%jT!$$vV8Bw|UL}y}H4adZZyN(&znge%#OddCl!(-8BBpMzE;A(s=tcf+_V% zSC~>C{Q=|JqBZa5{$f2|Gn2P@J@OA2?~U5eI(IgLMf>B3+sXB_Zk)&a?{5f;_Qv@G z8pD)g-S~dqj;|xdOvJoQuTnq%0gHR1?X1#Y0~54JJs((kD$CQHV2+*>%%OR~%Fv8pd(muQd(u)t&j)q@l?TwAU={V8 zU=?Xzu)S$Uu!Ctfuqw11sOJMaipryCPOyUn<^(&4mP2Spuxd0L*wM5cqvr!VmC93T zPOxM3oM6Y&ykN)Cj9@isHn7uZsjlY(JDbY0X-=>jdQPw!G%wicG$WWxvw_v6rJkM- z>_RFpq&dL~^qgP?G%uJZ8i?SbHjIRxr_l=IZK1Wha^etTWB?buE?G(i~wOX*RIysJxD5^txWp z7KC1$GO~0CqDix6%w@w~0Hbyn|*8yOU-H>q%u#npf;TaX-xqb{{RhXpXT5 zXb!M@Xt`JPrJ2A6QaMo19yWyL`x;EkP%(h!2P>qqPz=)ZgpHwc49(^>j%N0nMCBwg zfo2AqNb`A(re!S6@-$%3B zpt;88)AAI}C-$VCRcwKoO>7CxCbooT8(T^_eJ2>;qapqWQ=$d)Pa)yhk&6eL?ekeM-w`G<(=r;yWsXdBVP?Il?}t z7VP3LRX{k>0iq)Zc#A?w}o8~EVX%4XhT0EMy>>Qdi z>}*=<(cEPh(EMWO(Q-b`Vb+l5AG?^AMl_>YW17G0LRv1OdCjh*S-&o&r5Vje)`DgV zYf4K?nxCv4%`VoQmMdu9v&(2!u~xLSr@6s8&^%zRX=zKdj@?M}kKIg57n&WcE6oyy znZmB6xyY`gS;TIor8~_wb_2~Ob~`P%(5z&)(OhMB(9%Qpr#Z*&q!P21^`g1R?xyl? znvZNC%|vz=m3PU$axl$Vb}yCp$^mkS97Hpe4WXrsA>A%{~rT#k}c zQ0kyMV9ljU?dRgR}}yqqYXl8?z5RL+nO%17lxau$`dseD{MDObv6axs;Q<%`mnMREz1OXTzN z6}dt#rE;lUE?<=|$mghhPQEPH$W`(sDqoVT<>~tU=*QCYlt0q*;&@kjGA_5}sF0I} z5xaKnW1&tGMlAc2aE+QZea@jc%sGIQhB+VBLA`OzIj|0M*ss3=E%tlRh+*AJP!xFi z-hvEHY+tdQ7&k-5&8#DS-w*b(Ht*wghEA-GVmZt;Yt{+tiRbihzx{JNSoAySr|n=$ z4ebL{s_L&Wn!9}fEaLI+P)*K*MgEGbU`qYc9!9_O#q^(V2czGu2f!lz#(iLs4(tC> z9~Sxlz6z$)qN`v^?MJ`wl%?Ny%F^#e<>~h#hf0TjV>*C-BdSPc@Ouz`Q`(=Fz3I25 zUFe|gMa!Nvduj#x&8jjjyU{l04)DC-`R;U#XPcR0V-rgnVQdyQeC@X|>4o*CVyiCw z?6=8*`Or+oc3lw`<`a(Hl(7vOIRDCdp<_umF_zB_uGegvwDd~Xo8;#hUZ-%lZLG=L z|9Q_4a)u`OCBatCeo3&^Cw@sVG)@0&{gPnQ zCz`)AY_(D6W7?jIk&o#^tzQD{S>vZf*cuNsk5o7|5;5hkH7PHzBp5u?CtgV~G)Dq2m_zRVudnL~EM9Di&K~fZMD2Nq(z8 zbq=OKQ*jR(Z!|}UOKYzPb#)@p!rS0+%mA0 zkJd5uW?(A^9m^cc?;9PT`-eDL*zmPK4V!j_vCv~p#)#bs=KK+xime>DU7BzEt$ehO zsW$^#`EcKcI-IA~&wd&<^?Ha&!zLE`tdoVU{8>kH*pFkwITVLE2XN9b=VR&kactL{ zf^~mV99>K1reZ4x-OtRo{Z>A#gM2cul>_T&4*RKZnU7EKwfrp9)? zNqF7bDgKt(-xoaCeJWj>lQHen9NJHFStVn{cJBOn0XW6skMC~ba$RY7(!?uV)=9$1 z0kPnuVa{RF#6e*`am;OjKMg|%{j=hyfnon7VdTU9B+PkoUEstq>Oy-t&m>Iy!sAsO z=3@a)5~f_kW15B$i##cJnqM**BNiMSi!_W_K90p<R1_?lz-FcBlxI*zH>I$mBHwvGk$b#SghpE2@5Ea#Ji zIiDad$Ssb!UGS%2?6ZzzDn<^_06z(H&RiEbag1&2I3{AWnU7a-n2!ZGNf_r0bg(}S zV;}Ow{xpnz;IK{-#y&oF#bG|Dz)8b=EWk;^+!pj@8b&Pg#4#xj^RWOY33J=IE@;Lv z#rh^sKMj+P=1{Dkh7oJ}MC+ts(=N?P!=^2olZ26jX^YM$33EPJr(tdj_NQU&L;qlZ zaTqx;CkbO8{9IQO#y+$c>okmGz{jgN%>55e5~i^g9@8|8SmcTQX&C#!!TvOieS92? z!^ksecla|`*K7OvSU@KUb6cR3h7pULaZHNCd@ML;&W-)tUapIesqLp&&pKX-nE2X{ zdeSg-tmBx9t>fjTVe43UNfTa< zk2q&q>o(ecJ{I64VQvdz(=cL@C+*kzX_$`%_(_=C&UHa2jweo>xZLFFrD6IGNpnz7 z8b++?2d$HaOoTg!J3pi<*`vm7laTqx;Ckb=TTo*WT z41Khhb56kp*6~WkR{s|yVai9xnq!)XDW3x5iE)&Mp#u)_0uq7P5)?} zG;G?UIceDBuQ^E=IheNSe3CHdgX>8e=C**7hPh90tt$>A2j(PU&Y9~1Cyt?y_HxcC zn8y|JNyS$G^H|k<_ESDO)*RDB41MHDV^7B>Vd%imI!PEh)^SY5$j!8!uL)t!>^Ikz zurUNCkZ15#Bx4K*vesf8n)W9JPjk(^pDm_!=^2olZ36DbzLUs42-%=d$mpy z#yIBVRUGDH0ZtOeIm5>^4I|dHg~nGhMyzQIey${9#PV@04x2oegOi52|G`PZR$G>* zVZ`z=Dh_l1gOh}<_UgL$nA(1d^{nHSh>5TL7|&@KI@WPa#n$oi(y(7y9f+ z4yG+SpCoMMgX6{dWMHc;=pSxl21cxP98-?_cGW+r09nzrb=k}zUTTeMCRh7KRQ;xM06R?fP;wx5p$I7!%Q3$9(< zt_+M=(-y6thPnT(oHd{QR@=3{X?q6dyRU-#$b{Hh=8Pg*+;VFw7fsw)xro*-eBc%5 zH*tK=mstnuW}mqaEV$n+uFrKO{JVuSm~jDE=H{c*n)uiI@jlJYmc zto#wD7sOia3VpmE>m+^K$J{iXfQvH7gZM6DtafG8o8~w5aG%B7t2IqtniJPSy-_YY zAHB`G#CNUn!~1xR98G-KpBa4UKs8MV@yy||o01QBdK^$bJRUfYRKL;Z9L+kYA!(n< zGt>u%^C67(76sc`?bUq|?dPcQ`07}zA2c5<#H9IYpBriNJ(aADb*Qg-R{k0KU?yqB z`QU&X_nUaF$(-Vj7v~kNp}-$*N4Pe9%KNbn+LgUdm-ixh4~c6DNZN0FR@+BiLEnoF3R^0_Z_eE{bR;NY~1`c z{e$Zyu1)6WmAaImgX?h;pS4)e;_%Olu&&}bh{JyVxr%EoYhxcUbBqqQ zi@I&7te1CJSJvC`VSn6j$1unCrST0%*Kas3*TwN^e$+#YZdY+SF^-NQO!F=&_8KC=0ng$T(Ke0;j;%g!Mn@knlTRXt z_r+t`pP-}LY4|RV59fj$Ok5&|d1Av zQ5V;l#DNd{jeb@v>S2zRPZ5m)j6uB^j_$v>-;Mzf+xT!y8sBhqI}8Wo4Y_Cytke8P zTeqt?9pc#>-A?o!_XY2_)`=X{hkDXt5zibeAKlkf7wW@)oeS1RC(Cbi?3{I6oX=XO zF63NfU%x}7*qTp#bZ)`=X{hkDXt5zibeAJn54>M!iqxnP~< zH#&CCIxfyo;)xDPppEWgp#?JiD-cs5736UT|KHN4+iCvs39 z>Pd@5JaepkbYJ7#LY!4cs^93?IqNu6Z>YmsrY_`+zH+VO70)M;!}0N0_M3ck+pTtS zU3^@0zR00C4(Dv@%8E60*=jeWq(F*?{TqGQU}2fYm+_Q(Bp40CK>8sBhq{f2|_qwC`MG(YO0#Xc5^ zIx&upvBnZ&w1%}#GwL!r@Uc$Ffe-uBV!3{+E}fs1zuxA2;(k+i2FLcL@eKz#>;5C2 z9v@s!aenNh#Xc5^Ix&up!8yX$8s2ZM6FIbBAB(hD#52cgmp(7dIf?x`U#yJ|e%@sG zjZVB>S$x*A``OA(w}Ci1=i)fLFCNQ&laH;V+iB&m>teoHCvrIFv{+M@-FB@_{30x- zuXHZpruk_f;_RFgbz&Uk%$j^$!n&+>WpNOP{U)ERSk%KDqoeb)^4HtoSvqL1_S-Sc zv3+qJ-e=Y>VyxUUG}HWup+&c=IGq?r$KX81Id85}T7!A48|T1}dg6YoZru)S;{!b` zhR@f!u&y*e#|0|sI^bCxvj+AzYgTD1NrMf{yLDq4&<)``RhRb zI*`8(p=cGkiQP(uLJ+-*8zIl!2ikT{`X-@&DsWws@(oMEP97X_iZqx7Q6;i zs^2zP#2@!DEZY9RLjD$*QX{v)qFR@2gGJk~y$Or9t8a!y?d!P>M(=KT0~YcAYBcaI zm{Q}m!J^vMY=cGH^|!#H?LnJiQU1NR!RTETZ@?nnUyZiE4^!&NZLp}eH5*}3ez$Lf zDRup8FnU+cHdw^J{$p6Q&1hjq7;i=E8~+B2w!O1qQGLAUfVMEDUVjJ1-e|qDBP`lx z^u^y{yhZN_sSC^2U)36>)B_*FB7W5ZST_HlRxqU={}2}O8GYLk##_<)*H2;5_Mru^ zZ2hm=!IT>OAuQrEdb=Zxx1#kapTVMSewWZq?P1yeb3TM+`)_Fv%l2Qt1(xmSdJ4~n zMeQlO5vJ6-OJI?o`O{rksf-m{Lnlf+=-+Etpbo_Jt|cxfM*QQMF)yUf$#D!sy*SO<_vCTpgy= zSIuEc-CYw#?>ik1qdW^>O1<42rqrv0VI|M!(+;qR|5FE8w7qBvOsW2BVM!^3Q>t&bQZxz~~)tE=;NAm%-BC3Hh()Govqzel9hEMc3Ua7sI0K^<#BlN=@nuqo1!$ zVDxjQ7VOXKpO;R9W$P853d{EYtL-jn++B5GblqzTi~3`<3!|T-&0tE69uA}Psu?Wm z$DYGsJI}kMKflgj2~%p|CYVxhO@-0-G6VU`l=J!j!t91&m&aI0RPme5zj!i}>;FYMWq6eYPG( z?Vkptp9^bXN)>K^(a-s%FuE?RhtcoxQ(;QYTMCQxxgU193Ksc)>;Q|lnHOJATL+`- z-Fg^(Pcj8Y$L$rEQfoHAlxn*OM!z?%hbeW>6c}Bf7r}O3PrTl=?XPRYlp4?s7X94* z$7QhS`g8g~7>#%RA$|*(QWy1wW#_ZuDpU9%fu zN_C$GQ|i&BFr})$0;As>Ux(4py@jwyFJ511w>x_R^~JZ3Z4Zn1 z7qo{(+w-1*(e-#ejNUCf1xDAMXJAV0xdx`xsueKuuZJo1-V~TpV^+W-J+8mWRj|l^ zmHtHA%!{wfFM-i@e*;XZ)l*8y@?F@q{)vY;9 zsd_bF^mFVI81>g_Fr^MJfYG=a1XHS6bC^;+&xQSY`7|E`Q|i0cFr{YJgwgpk0;beQ ztznekxiF<>w1m;mms4O$-B?;luhlnG^vEn#!il`yZ6tzTw@Wch; zVsVMMRJ0PUMH_mX_pbCd;r(dYi{9&9RUAy^!So*CL&fo;8kN<=QQ`!8pLb;{D~nTw zD{6|`RMr;fh_ggP(TvJwqK;@HE)#93Y%7|IE5(K4Tq@5M?dUDVr;F-TR;Tw9pGR*f zu0Ul4QBNEp8jA*0HV{=rOL2@iiOQ42<@E2D(?ne=>(V=qccXWTpGf72;xKv_@`2(a zDlZae&>NA@7gtbug*aIpE{>)P@!_;I5@(C%qCJ)EMSXF#xJFz@<#nQ~xKZ3H?x6Ax z(L;0)*NdB|yh(Hvokcfs80WplqVPdejOWZGpP&q{O6FtR1F`UZbqPG|&#)`>Q zP8JiyH1VLAOXXZKQ;ZN(#B?gBi_v17m?$2i@*y!xj1=R=Y$|7qsbY+nA?8pyM@$lr zh{wg#R6Z@96wiw1MG=)nVu^TIJR=rSxkx-J=8LDqGAfserDC3VLOe(1b7G-*Oe_}5 zsa!4=h!?~Pu}Zuu)`<;blh`cY7Vn7<#K+<@@pthL@vZn?Y!$zVZDNNIau>O)d`-M0 zUKFpVd_$}jZ;B7a`&7O!-VuKj8^wAm*NacYcj9yL6_sC!e~K@~ui_6X z{}5k`?Lx}3a=R!ie-~xsPvQqEe-OLLmEsHWsaQ#iFMbqj#Vb_4BEAuCiQmM}RQ@bp z7fQSC9z*3Z@<@4{JW%dW<^J+Sd6qmy)}*qgtSzfc zPhLRf1@d%RUtT0Hq4E-WzHB7x$vRZlkxgVpd8#~#%9G^o@@%=U+=t42?W_5H_DskZSqcex4cjGl6~a>Iam&r zBjji~R(6mrWHTz8$tz_`*+q7uvXi`Ac9u8E8>qZNUMsuHt7JPW+sRwx{qlBs50&@G z2jpFHpd3!+aM@E1kt5|eD#yuTa*XUJdsEq4j+d?E9r9KxZPj@UtTQ><#na)EvL#SZ< zdpTvD@>G_0_Hp)bsyJ1ttm^FP9PAw7982Y~&Y{lH&VEiMDl0kFoX_QMP8ll8IDeCs zov-DWRDLNdIKRpRo&BlY-}ylv=4_YJIn0sHk8pjhRMvG)a|)abo%5+Y z-#OQ5;M8``r1DIsp>vsYiPN0Q=FSyPQ>TN|naa*i3#X&g&AE}v8=Y&M>z%evYbski zH#w&`O`JwlHgb-0u5?a!s#96rY3X>*RZcr9+c|ZdE>3;tA}TL(u624iw>Wn=cRTkw z_d9)@e$F6gs59Id<&1SEIFp=d&J5>4XRh;z^O*Cb^R%E+z&+)U-o&OOd;&H$$` zm3^H%o&HWC{UGm8%V1}O^MG?7mG?QLo$1avXEK$Oote%==V50)mGhk`&ZEv#&a+fL z>pbo}<2>ZdqH>nA$hqAa?~I{xjMLqj?eui+qVg_hsx#1;=ggsUj?>$D!WrU>q;jOQ zz**uv=M*_FIxjn`oHfomXQT6m^QQBT^S<*p=VRw{=kLzf&Uela&Q|AFXS?&ev)Xyy zSxV(nXN9xO+2E|Da;@V#>zysmW-2#3uRCu!uQ)5IT+d&iBsG zRQ~LI>ip>Z=KMkBAI?wC4(A)^A5{LsQOwzJKdG;toy(>{lu6MUHFN>9glCpdG`Fm#~7I!PF@>`%eIl}{?R za-esRhq+~7D<7?6>dnAb4my@OaX+=)r+uuSg-y=dpN5TQ7z;htWNdN{brSrZX)idb z*vi36!&W|8$JCX9t$ef&b1c7a^6{`Q4VxS^CkZN2Db8H9n_V9?Rt~2HD+)uI5rD&KH#Kb&d1Wh zabZo3IR{H8!!N>5IB#|AndOi`AmkJU-d={A!HLBe%PCGLwvX%1sEawVbq2@H%r#Mm zIVI642`8qPkxwi>F(2j>rxV*(Y(F#Ctc%U3I8Jdoysyagw^?V@#T;HIag2}qh1VH6 z%qdPMwlCj5b`M(j*v9(OW^tdz*BKm+=e6ngM2^|Vdd%VN{5t57d_VlJ^h5mn(F4}Q zvcJ#Ve?3eoUUOW}O)&bNJr)<|F+a`!#A;Z!KJ(-H%x7I*r}uFL+?@;NTP{_Yf5c6;MI-kx{@tmJ(C?=$HAI z>(8C>E7SMNlD^TF^lkKB^j)){Qs{5O_n>dU_oJl}eG9&;aHw?X`|AVf`}B%bR;2Hp z_owf%%TQTHl%wz152bI&52EF8`lkIP`iA^iT8^i0wU4In&a2RJFnz0j1btIom6j9e zTkON=`|Ja0IflNS$2aqb&~hYwKYs>&b6tZLd`o{GeS=;=%Q^bnaFwZ3! z=hHXq)#-cp`c&4Z@6u1#-|C-E-|W|+@Aezhx8N7kf^YcS(0AdjXt{#EXKz8@&^Mr^ zA$|Mbl)k6GgqGIyeR>o6rv4&YTGBV@m(w@)jc92m)~$We$M5;H_Tm`tM`M2)HnH@+ z=}<>w!!Hi&zaxx(2Da*=zfHm%GO$%I$D%Igq~hSZj}kuv6My%M{SJ}HDN2bYKWpo? z*$%uxsp~a$#Qi$P?Bk!&8646}^A{J(G5>z+fAu=SaXn9j?fkkk^90z=d92H8dPkp+ z_W|Oae6(nc_x8abjLiV!9ev=ykN5b213vsVAMavh9boXGkM}qNgAdHH%z?JQ zpQwwr!yG6k%ng3d2Y${0e$I_!X{~iQ2i9Rf=fkn^v!>yA+&|>k812PA?jK;zCx{99 z2Yf3x&BuP$3An*~GT~z#V2))D_Ydmke1JIz^cVc_Vc~q>=N#bY{^3~Y19Shd4*L;{ zTsRhf)-)X7#QNmdnEXER^|51YbhO{JMf2fjj%iD%0}U*uy&8j$dawX9$F$3b7Uu&D zO{}R6VQ$#weBkFC;OE>p7W%-P1M9G#^Wj+dS<`Sl&WHRO2i#!%Fy?${TOT9%!MAeb zW3BzrwDr*+h~<1ZmO0!%v>oOH%>6_0VQ%nqKJar6@N@rgEUj@|bS!dU9rklR;BXGC z2@buZcDdTU7@Do^E#!fOCN~`mKWiF}?i1qp$QgY_ejjb&V`sHX`}r7w zZ`v60(dVoa>wnEL?b006u29qPb^gf5Y9sjEF6}q%(taxkZetj0YhwJc4*NMD)Wzcm z9L^0q^a*^32L=~@^bce3!GRw-@PiLOa||Evp=F)rmcGVDM{`W9_8ZORI5wOQFz0~& z;@sfpeBkFC;OE?|SX&eCJ!T#4=X|VK&Eee0?{Pj9t1;ROKj#L_`2cec;9I#dU%z|V zv;{e^zQ&x76|4Q+Kh&Sh$FX2d9E&hF_&Fc=IS2STH!BwX&zd+ctfT#$j}@yqMss=e z+b4c^jQ=j2wH^E2HETcp{;GdZHS0({QyXzvu|}I?!rx_CGqzvXLq6uk+K3;R2=Af%_VF{;_*Cz;>VI`zPN&@pH!Bw#N$hlNVf0+!Fj&N| zTmXx`}*m(~oXRHp)1HgEqMV3GgSj<9H(_2TQdPlsjm(#FrQHn8;Zv!NqQsiSAYqVef@SxA-I*|@-W>}oegE_G;jGX7$m56gdHj4o z0T$)Y{P_6U+zA$qpPh~WsW-v0by=UUKh?X!BHmYBVA)~n>N`mep!-Pd`$P_;dr6L@dqa+-dqfVR`$bNm@&tXK$noYr5!_{hdr1zb0NCxW|7a4*TFv|MT3Z*qCYbCy@pvzXV?vz6DIL3Sdbk z%yX7_N)yjw_M&Bo^}Oc5jOQ#z(zBS8=-J9i^o->wdfsvtm9zA7mNU(BmUv1N&tguX zWw!Oa=8TNzEa%a)m<#CH$_4a{gOz%nCC3&z{EFMi&}e4T0a$@u5fFkffN zZ8>UL9HUPPU%XBGlQ3U%kXst&YYy6FW4`7fw=~SxAGFKHd@VAX`g{cDYmv!EpUZK~ z*CL~-V}bcvWb)Cmam?2x(^oo{vDH61*7RG5`C4R-W0;%m=WCQ117W-PT4au6n49hA zYm^xSVY@K4`Fq0qI_>Yi+i~}Lul{}s{jXg6_5Z(Zzl{w?b4Rwi#Vyxm_j*eXnP%=u z2>zd7`)!Qa6No?e-TTe|*!jE4On;1HxEZ+>#d6m9P@ZwWj-?!mVtHzQnm?hvS|`EJ zI{)AMA))O$w*Ek#)ZQbB(*q^6+NPU=6AJm8KT=!q?kDh11 z()Aae38VMMw1H*wT3!mH|JS#HW$)+y`p1c|^!=}$4x{@e?VQK@x10x4>a~`zoyS#c2-`W2^>3{Yqj`-R!_wpYi(pEPXaY;;6*h#W?=O1+ zEPX%cRp&(5&Uwt|^}q{YJCEyqDlD7#>uE50UqNG7_WtShVRXMiOIY@P&ST{zFq+4@ zEi9Y2JKZNB>3#qy%FvwxSBaPwY>3 z5bR5+9F^thPK1j3&I5<;MyO18Am9#zsx+@e6)LOHJp@P6{Q{T?`Vf6zK^2;v;via% zrF#$#rn?DnKf!TS9!J~N$bSlzr_kL6CsBDgm50;Z7Dv;a2?vrLqi3)scfY~d~(DxghMzdDbpv9#*oX@1Y5USIi2bizoT-q)m|M^tnu7mni)~2#H zMV?A`CDb81k7lx{L(8djw?QMC|Kbu_E}}aOn$T8LS}vhG5H6%SEH0*{1>MKcknTLV zRNr}k*)A@idlN3BIWJn$(wgSHXhU&V(9)FdV8CqC4QN)3%c;Daws9{)M=CK3^fgqr zqp}^{qtJoM?o@WC`xAQ5?9rXb+S8oTooMMncP4bFI}~ozGe+M+CFYFoLU%6QME5^j zP1coWn!cKro9G^eUNrM_Z(8o7yA^uU+|&2dau?mPa0kr_eK#%rY3}ITY4+%Q=#GV< zR1T%>e&ioUCGK7rtnXtOOgg=3zUe-6@58FWg*?i zFp|odRL-OsrDxDx5u?d)C&Or3X3(7sxWi!@EwgD3>N#|O!-KR;qPria&^-}j=`M+> zR8FPsC+OaWhpBv+?rC_M?qR^J(~r}A43Cm$DV0lUrs=sfm-GU%m(@>u%ZZe(=U% zue7+*$Pxa_)qZl%zkPsLT71t9{r&AVzIVH~8|9T2*ZXv|zu<+vyap$Y@k)zddvk>U zkKbmyCww@=%LOl6Ki>Cl80PlaI@HSrzf@(o|3Sk+?zS%ryH5y|4QyFBd%T%kln=uZ(h^+Azh-1y66#$G@d;o%_%8#(BBm zvPbpxzj)?tcjGZbyb!oZ*!gm#x&-8-BwR?&rsk^-7E9eKXA4_p>M6x9;iZl@<^AWSY0)$j98FFAVld zix*r!!CSfex9)9arhBEuYY!dh6}H&nHa=~VS6V!1{6Me6&)>MuzcJ7&Eq1>h?;Z2> z&u%5v*DEdVxOTet>b9-!Eo(=4rNuwh9O;eRZ%=Q780D1~AGrH?@B227xzAiQ!^;Jq zvCk;)i%%xHRoV>ma>462PV#ylGTa^cx1nAxc+Z0;c<1~v$L;q}KQ9;j%Z347tqJqp z!Z!zdx!`@8PWOgi{J1-()fg`q{CJxI-k=6gy0cE4=;eYBYB0$=bIB05?Z*?nT=2x( z2YHK680j82g6^-+0dMV9=>7APVQ!TsQ@mX8&(&sm%MO0sy>#CRUM~2`6|=nk$G+nZ zxo(7)3x0U!Xz%FhZ@A?TnC0byn{1ipb-r+uyY9%DUM{%XxZd8myKQlgK5LSf3*NeT zkax#3>)m5|&-8M^XN?=+&HQYwd%@!ayj-v--`Cst>#Od9SB81H;3tPq_MU6D(Y>l{ ze=ir@`@%8a&4V_(w=H_W%LTW2eu~%rjjit9M@;l`!Bsa8^E$8k-EDW}OfMI_azuY` z(~ceP(aT1Ax!@T+MtFlRm)=8@`gytF3Exfe?pyS$`{I*Byj*a(_vn4;`(ykOmkZwep26PwL(6)-t{>s$f-fIE#{2Gx zJ-pSs4EA!t2OcuOKeNTd?#Jg1^-GHn?mgPSVaZUp%UL7+(&C|OC;HQ?Epcbg?(dft zk2`v{KdQle_l!-W{LHgtzhufy&6u-21?+=IiYsUZJ&S*2;FD*X5 zYd`<6Za=!m&Kv2M7SE|Z%D-u9Wv?PV-&tC``1jHNhcAzJPn|m1&jnX%G29>Z)japL zJNx^&;JVB{9}}V z@Yc88cUSfHbHNKo5B6srx5Yj2tNwm2xX$L;{W}_kL|L(a#0H^HiaK*8%0d+xt)PbHSIr zHOBk$=pkG@2`Y%Jh;|DzK_O39%FD@S5DV!0q_)48OE^pJr3N!%ls|o&U~6zqGi^!g1cmh2OZ396G=+Ep9ku zkaymyuiaYj4Dw5hk9mE7x3%^U?&)L_O{d*Q%n7&|UG~7(W+Wr)i=0 z_pyWBXSNUabHUa2oaxCbZ@G`QAL{3V_ZBm~w->+ezWnk;KNsBio>AU)MVs9^=k@b* z!B5;U)hp9!gZp!*zJ4yaOt;?NWs5erKOH~9&jo+?^8l~vUYp%Zckl1#f*Zd!&}%j9 zZTF8Srun(xM~eD--+%wQyL!ktKNtM^?Nhx2KUnK-`o|1E7rgSok>1abZEz2nI@8Yu zA6AzB|9Xn>zV`?Fx!|Hh3cbbNcK6cr2Kc$)%RlY!-F@V*ZjIkY__^St9vSXcY4xl7 zHU0ja3s$YBcms!Rck5T3wR;`2tOCxVajlC(b)3dLNU(I1@Hg$IPa-0<-KDnO!9NVBlnnBaQ6{Uxz`*q z$tx|s;<5dfZGNe@Td&$kueA8KHD#9%`t32d%olV&a4GRYufDr{^&Jb{>-QMzl@@<3 zYAhdk^Fnw3cl&###d|+IufTVna#vkC)GICi{Lu3Yu6%a8TlmQ=uhjUI^~<}K+u@#n z*%a^dQsTKkEna@_QzjMnh>F<>m%j-WX82I4V?(?0-dZoqZ z%FIf?xc;VL`*o=elPfKHbX&pIvWEy;*XB zyW2tiyj*a1|DJ;J)ke7w-&E-3f?q!Moq~&Znd?5N{`~samv?)9fm>$eATJl( zZ_UL8ho3jhz5U?{UM_gbCu5iI@yI;)!KzceT<|_mR9wDtQ=xm=%86bsxO$(F%dh!q zpu1?#kzOwN$j{5UZ@s+PeTwey%>`FE`-_4%Ds6Fp>09XKfp zeCuP=3tGu{+@mH;^K!w5HT-4yl)jtX+G>KA3qI=GLCd#I*ywhbGre5!G36&LFZ_I+ zyYQoaUM{%8=r@-ycxjC*-YxWU!R;$_E4cg6x7>gJKla`_Jc{Ls`<=nvEx6kWPS9-k zVj%=QI0SbME(rUA}K!xdMd)mcMX0Y@PzR%}crm9)_OzQ{NhdPE_dvXQ zZ8F=_ZnWsGSXVHTpX|TfY)`vJ!JC#W5s^Hn^9-{+ZU2}h?7`+p?lyhC*`9W$*gGb_ z@O0++H8z;-X?J?Rk)0To&b-(iYCJpIha+c*r!0#((R+>Ap0?Y#hGJ94EavP@7MSg6 zA1?fH2hIo}wU$sAa5sr66W1!pv1L&k0AVby0??P=fC(u(<8 z7jU*^t<|3P!`oBY=?ZiB1GU;}PkUF~4bzC+NBPU6o2~Y=oeJ&}dD`vei96R??P(`) zD;pfWl~gj5&kTAr$0ZKxWZ~r+jGm`ma1#6 z^XRM7toF1&W!b>e?|#Uuf17Ewr+sGZD-qBrfER)1vG%mDv|A-wRej7ahRv|r(+=yo zMfg;C$m3RRvD(wN7EBO*hhOJG`PNwNX*b?5nO$goo$EI@TJ34C47lsN@8WH~;LUcc zJ?)XX&$CpN>rNn&e%4KmpXG|#j({@GoP1e6YCU8Ek7yHxp zhy9za?!ywf(<^WBr|q$jlV19T^Lt%Ci$86Dg?~3-{Jbc>%I%KtpSD*lUTQUmW;8dM zG|=}?+uUt|b%@7d{&nIhW>33R((c8~<3W4zs7t zR?f2?-Zq~<=={!PPkTe}b=FJc7xTqm=9%ni-~YD4I?8b&&$MVZv!`9A?hI@Hg%5eQ zR>he;ZP%gGtl2x<;9nZn5%#o2x~0~NZ=dis_1`di+8uh&v3mYEB|l-bh`sICF`;+_Bix z-lQ$I^4ICj6Lu^U_O#89W^)tvw5#of ze|K!t0Y2kQe_wmr)y?qt&z%nPqWj&LJ?)_rSDRf&EaW%bOw68k<<#@c)w?a`=cjaX zwx`{G?h-RpKm4-JnLX{Vowk`>Qa|MHYUgG4v^TcdZg%K&?zhA90h1McC8kRhOAJd)?y`3%wBbw7pAj zHhVSx&hzh_#_VYyf4|6_K4&b?=Jtl!)6U>F!+iLwZhr9La9w-a8#^vE`^^dGz4};$ zJ?*Wht{OP54(-n%7lVcjq8R?Z-^do<$J#3PZlUS4tJZXYgId=aa?Gl??Idhp2e*<{n^ zLZtL|=DvDCxqsqc@^XpCqP1fw*(5_g8InDc9iP`!=B{v5Om3OTmaXqC)6DEFX12U7 z;+{{C*_%}p=RfAQq}ouN6$uCxW50KmWxT2~=3HB*iY+gD?7A#gziA-W-s&g&ta~kX zPjry0kCvB3R0_!^O%U!ETgyegD)3Vu)5wuSQ_9H075T*?y7U~GRyI3Yh3{*VR@QTj z6)W#I<@rjV5)J)hMA5J9xpxsM+UB}0);X*&&7A7O&nzj*Ysqt_7yd51(1;?uP^Sns zqvI+If7hMQ{gRCb+*|8gAf`2U>e2UXp8~;b+S^`yPQgoJZqw<#CpmIiAkM<%HHU+Myxy>k-Xf4CyTA1RP-tulTZkXS&GrqfW7)#ffZ!o13h5 zdm#6WILqG7t}cR#58-VNU1HZ$BjLaZKsH+j4sS0W)$yy%tLf~*qap{-krw|e9q<<-oe&a@6I3W z^JPU7ONo1Zym|1svX+9mHkg`ifW*5z?zW#&1 z<-N-%3ypmm??!Q5qh~AGJJerf*?pI#&D2`zxxa{1`T<7go!XrGfYF%$i`G&5(6Lcl z8I6bbPxaGC>u5h2i*a5nZ%yHzu_UKjY7{$0cBXSdb?LZ6C;mCj4wk;l!=K`m_D|=F z#*UF*QEl&WH?!PPA_E)SqV-Q2PV)uTK%@SR>_9c2`UcfTs)vuyjgrk;u4mKyn)%Ya zK*vmdl4>u#7o%&%*FPz`7w^Ly+70+Ar%>&sIfZI3jWwg!X$(@WHo7k(4X0W`bD5EE z(0-`?(0*txpmw15OY>m)<$c*%$Om%6Mn-*r&Na;=G)K@JIv{;*R?4q3f8!=#aZ&NgQkBoUQ&m!%80BT7JUe9V2{zz! zOYT!9SQy1D&8^hVMz*5)l+Fdstu+4{okPb)=ZlVq&Jn#X&E2%Nq4PrLg4PDqwzMB= zTiOquU)m3?XXyRX`!br-BAcR3#ozhJZm&yODtjOF?fKkC4$GK=6@DQsA+c`Ky=GN-MuaOw{9doTwC+>ooCjKSJ~w?=N{biaHLo?>zePj;8DE7(6u6u ze>w|0e#&%o!a4Tk{a{}C+H$sP`e4@l(oo)Q$|*K`b39x6+KpemrtwO5%ko!=S@_Hu z`FZ%$v^?nVe7w0^f>>9gDc>~u1k-aDlxh08@H%eg*{C@M<>9?&*yAhJ_>ji+W&5S` zSiydIc@w>Z+}TL6ofdai)IU^+hBa6jt*bmE3(8|ti}ApyaFL~Z6IrHI8tzqVmk>MM zr73M?=6^d%lS(F-6N$Mq?e)1U_3)3dA5NWQuNdK@bKlu`k zFX}(0fn9hj#}xAV^d`>KXN>xs?-R$~O-?25OzUFkhep0l$42jk`aJdXFLm0phOgT2(E*VxZ^>nh z#tYS0BRhKycHt{F3}$zB=J`plXgtzBjpmNVmyxE?n4;RAd*4*c!OK}qdh1Ets2`d~ zs24>=_m&7pL@Xg=Lssh~_z%7wQXSAo&|Nd3pi=F~nk zS8j5@DJt%6%?szeC5-%m=H)gCx%tai`S>8`Ooq9Y&Jm4Ynont6VPt2c+)C|6$3y#} z^FputUvf9?pXP2lM@I8P^FFmL?T5}IwJn`fI!E*#X+1;l#pt>&ldrPs!Au^ENY76V zEXZ56tt<}SYQ)b^bmSMWrWF_S)ZsE&e>;e6_N20Qv2-qhkryj=ZeaSA`wYeg`MGoLgmkt%%3+I(jf*SFmV>gQK zkH3g}2ix-3DPzUG8qK9xb(p&Xd zFzdY6TNdtg*SGh&;-bv(EFwi*MzJ*a1i2vB1hHXrX?f{uP5ETxb+KSbIk`Vm326@Fj(tSYjvS;(=vb@meYOSteBs zV6LMF@Zbe$<;UIaxx>notetg$l(+7iOucTg#*V|};QeFSu{AT9ycHsjsm454i2#xN zP73*tLobuV8h3feIj=0~=f>wfFDQCWXe|48U1X^?qKK@qVW2!#FUGXy-4$`%&4Eqd zdx(|nJybfDF3N5_KFto587wnL-Dh#%Gq5aCedY1cPwY&F8|>WjrZVx7&i``b?C+i( zWQIwD`Ha)PtYpgcB60o@UiYPy#rw{%9I7~+cW<$kWiOsZTzTWkTh(dLVs3hv{JbXc zOp`cso_eZo*`TXz@y4FK+=ZE<`^4+)QHvIQ=ZaUXS^sgO_Vb2ZpOTj!NSGnMm+8(s z6uBp!<*q2Z)~dscrSvt`9`0y4(yxJRl%bTQen{t<`XrtAmd{@b-@t~le?YLHaS>Va zA@eU+R|c<1&sTj8WRDgFTIRX+{V86Ie0XN~W7cS=i>Y_3{)YZT$86-EG`^@G4u9pw z-@zJp`p`=j>U*?LdcX918rSr*)Ng6LFS#(1Pa3{KyougyGO`*u-yJC>7lu4!!2 zxu$(m-KMcXb&SSByQb~LjJwfnf0Ir>>l@KPqkfF?5w(NSJR0dC%>}z}ddr~w8BMMe z3kiB(RAcG*sgF^gq1OtYcSD@wmz~4b4EiaLQ0=90LA9601&tS@bEsAu-51qrszp?* zjdB_F6C?eneNyc*vV&0`T+sd;tDdDbSI3_+I=?h`&>Ufu6X|>z<&=80E?xF>}PdL!J4Xjc)|CiBVoQ%BN?lmg0L? z7UQy2prG?Y^DK>DYG-O&qkKy14Qe0yS);s6$419P=Z?-7&Exc1Msq>)JI(vlw$z@q zA3Be;A39(3zNr1_eHmSM_tMp-@22*0#N7&ptV zU;ZkxeY}^*5?EC(t+iBK4=%$`4(ch_cJE@TQ!rFK7&TlL=$OXYyyuX3?zhF_FkV>d z=9wsW=bR+wEXpq5A9IyG3TzZ}^vp8D6c@QA?=kpJ%q+`_+Qa0C*>A*_aRtTx=$^7p zyEeRZ#D0-(!UvHdXIuUv{+g)1%ukH&)|MyC+bPQT{wQJ++w&Inwu??RUWyq#yYidI zPKY`mPlzhxNo&>TbQ~wk}n7@C~rS6%H69*uoc!q@@19uJfq0T5BV06ms1tx`3i@y(09$` z>^@i7@`)ee-;HZ73qA>g8vQ)WJ|m;t9bbl5T9;bpb}J;eez&j{^{UFOW6V-dEY9WERzj^fx(lnpyYa%1QFwgd+TQa}EA|O9#2| zX*u5V>?1ZmxRC6q9kUF3R)&{|c`!A{U3A*pg&(T^S@?Gf5+blO-xcM_JPv#odGB}TzMaPy`jwHd z7MnAT#e@};+tSzNyV8ENTpKz?)Qua%Yj%6*oc&5)xxdjXL1Tpa42=uwKWf3b8 zG^S`At*_ZzX7-w9d9?VGpfOIzPh*7M3yu9^dnfX3nQog_-Rb5_W0}S;jeXbV4P@2u z!m{?vT0iMP*{V(Cq0W~@TT3LP^GoN{NYjkQPv?|s9kmY~Gqn{RC)GEj@zDN_?w9K4 z_ltda(72bT@%NrH8aqa|r7=ZgFy>YZerNk}w(?AWr@UY^W~#R|2hnR$ zy&dy@otR$dmZ^%@NW(lrb(qE!)nOWUbj(KQ(;P=NoN5KtbE@IgAE=&Ce=zEY>I~I? zBRkN!rulB~v4?Eynf5$%#bHKsgptov-=jH{`dce4yIhymk&mhH-7s&`+`9IBS$Th{ ziKnupW;8!iU!rqC?QE0>8%$g*d`FmhvlaOywTV$)Hp;X9-74}zff@O+MKQuCx6*l} zHlcQ=`IOq6=1^)kqg+fsYcw`Gk4E{LUW?8Jt!?PM&>Dc+miA9=OFv8Jl-?J$IlUJ; zr$*O(oY#rBA3IUJ=u?hosp-m7U4JDSdc0ycqMPz}fi1=86WRI4{>}KP6mLZQOn>G) zuLXZ_?5QXoe4F)})tR~GY$Tl$9Aw=#7g+YPLu8IUBP>sPZ1EkHI81g6I>H=$a*0lJ zTxBEQ{Bo-w7io?Rm+AH{VGRbYH8pZ)@_VlGy!o8g%;n8WasIsrZ*_g7c)nwuZ=PM_ zxkt5+qGXY>@;l4V%LJB?B^!+tj>YQo$c-K3%J7e3cFN^!+~uxvLoO+L$M0bY2}5N0 z%I8E4M?YWD)KgZ^5M!BevZ2VeW0I8V9G#uq+gS3I8Y330OC?j*X)WhZ7%Lh_-xqJ{ z_mKW;Cx{P@spZPvf6K!eSBN^T_lWKOedVn=2Sw|?r$o+a-Q?TQ?0o%-Ffsq`Uvl(m z2i~*r1!0M-CRgn(#&@I%6RA2Bl8XXb@i)D)iN+hV%13qE@%06Yi;R}Evfurb{Naa& zqTrKuys_(FyiFQMzIwq{_Bo;hcRBspy^EYT zCI|0-D?KkbsIV+Eqbl!Rcs=WwxwMSz(T-0|_l!BsJuEhkYR5BMQt)PH+q3$I+w*0A zJz?d}91vsDcjT5nG3;8?e(b@L9=x8p18WfCMT>tk9KlymEzXb*WEo95jb@ECS#A-ry*y zA5tHn^S;b|vv3(uOpd?pB)@p*CgGu0(JPO39hD_XHUvUbG^^77R;jOxaL zE$}D2XX}Y4lZzQ@2ptcdcX}6}tMqObw1>J`0rdcV7Bl;_QMmEpHP zo?Bi#nHUh^blLv6CHpa5{HJxsv)G&8;*K-nrjVzHFO<4_sPM(0od5 zPW^}4+$cXj>u}w-NMcETdusz}l#8i-=)BN;>XNlCAJpqGOZg^`q;o`LmgZ2JH)*ak zvOl#awU1FQrv1>d(K({yG0NTax^(W0=7RP^^S+Utjpmo$7ww16qmljTwbJdH&mP>b zEAQnl!soPm#jCZ)}U%{*|E?pR-#D|Ggs{;Judl~Qui#y)wlzeDb?%qm`|?!MERz5kMAhV-}m+6 zSuVJU7k$@QyyM!k(;0>Hxwc-sq-QyyI@FO-9m?~wE}HUoMh>-Ieo`2Yb9H4j1v9iHZfUt zlKgck)6SY{c-9l+<@cb5Y{=crEc?{EY{jkF;^m8OvRsZ2tazzfvTN0}^2FKW;@Yxz zma%?A<@J|E<%jf{WQk>&<_534Ub zSL?$6o^r?(bV8HYQ}y8^ycdf|&y!-;^)Wp7MW|(rm?CDJu$ua$%*Ahbwd9}Lz`uQ( zqPj>NJdDrpQ-QZW7|XUV&BWVHX}~ico6C-;%)>{XobG#j#D3GZER*=cgF8f~O&NKb zkVZVOkmAf`wxf9! zna^9}7q+C5p>wOqzXDS5ky;A5y>cVjePc9hw(G9wyRWqz)!L7BPUkN^ZfPUOyWeJ6 zkp6mgSsn;!B4vwHyr{ZR$RK65nX)?b~5SW;Usl7cVug zsJKyo0oz<>1fO5JzVJM;gtgf`lDAxtQ@HueH#rO)DW{&?%&3p0tT>6C@$)eC_8j+< z-%?+t{?=t>SCi|I-11`omOuH4QCv`;@jAris}ZGTj)atg_Cw=~`jW@MBD_=Ia`Nr% z`;7Vzy%z1q$cKv-$iR2bsw@V?w>I=uI?kVbo5a+h!cNjJ`{Ud97F8zpk{j;cVKm-pjMKOt8PiYt^mq2%cp{L|d8e92 zHHzBbX#8{xM!ILDKh#!6<1xBl>U&gUseW39wdCctcV|OtWaKoCXzUo-nQBz-YTbD7 zlEz}ti%){aAe}FxK8<3EY8urps^@QSdWd^#*O*FF8_#Jx($CU(qXSy-GH;n9B0QF}BP9p_lvAh<)3~FtMs=9JPUDWA zL$#XTBfT%G&r~0%RvYCq>L*nHss0%CX=DeQ7ijKl>Q|4qg`66)XDXxfZshYcpHhFj zG$q{PTDd$IH=H^3H=`UnymSM3bV@G%C3LBvIg#3y=2;{EG0K(H4r3-P6?0NF;U!mR zlGGn)UN*|D`L?9utA{t?DfaCXG@sHrqOnYKD76*Mn@0AhHl*j%JWIzz=ai0(&M6%a z&FS=7bdKn}Q2W!*(t3c}mfDl{L+6)%md+i$M>-eue(ANgeaXzaRrioDHyjX46C1F= zvtwn^EKIoWJ8-u3ut{?5vRS6mchig3D}1CS?w)h&QSQR2&Nx}-b8ZpkHs6#vy0pAk zzaC#5UYl9wo)$OK4C0oi_4u$tCFJ1dg<1LXeR$FSOHA4Re#ge`@ZtG4EU^T^eyjVq zfu?#EDRO)n!k>+Fgk@SJ#W5wU_&H zG!U1EcHnDPPqOsyo?c!J9mX9N%oJ~Z28q`ZKF$M2$5+D znfaJc#rcN7D(uRvAv{;Q(d=y1HLT0Y6&B~I(=E}LC-Q<*D#>Br6ze`QEzh*kBxir# z%s!;Z$6dL*4BDH5PoJ^T68C6`{8(+6$*d&%KHghe(`R6f23#~f88S^YZ`hV!<%uGC zQ>3^${TiD)!c`VqRb1}qSeNfh@58IxjJ8vHC$BbQh{f^otjTvo{IPG*@&0QJAri@orjly+=Nd~n8fZr%PJd| z^Wym`-LR}zoGtq+E!&lT0?*kv7fUrIHw!)O#dAN-!X9R*&m!J=@fL+fTb3VuWa$Wh zR~UM+il}?{n`J=92|QIoK4IinM!tGs-yW8|ZyvcwIrIE^b6XCLpCw$6jpfuIXpGEF zyPpjRcb4<7=9V-TsLymSR$q=Eo=w(u+$E^b(0*vF(LR^9NWnA2wU9%rt`gL*yti~W zEsC#dTGV~gPkw0R!_+@%{~ynmk`)i#6a80|F!Xaeexq138Yhi?>i?Nncyg6D$P(z? z;3pk0it)w;^GTn5<>kUY?-`BjR0Dg-BhD=ZTlny&xTf<%fz2zifS6|hvp8Wd!*V(!M?S5fC)PkQ8Q9tEn znm3JdZoMOwd7k{mI6Qb2MsaOqAEVq#=Y`INQU0alq@Sg8O2n5gaXLpvb3xCi zdEdykM)ON+32J9LW;&1bT6FHR=Qo>9or3!4Y@V~7+&7zs<(woVI;OGY@z8yl!$f&| zW3;7N)M?Aj@)PBtuNy7>dz`UM+2SMXvRjsIBOLg}fJ}06U@o4a5j>;tT`bnjsKHC; z=e$EiS=p}s0ZZv4^|*g*1rf5X8279*ls~_ASTxF-PrNx&RWw>xPS*FT!)tc$D8g^- z7d`F`;w}4h5`NqFiz7D%@liL+%RCwK%Idd1vYR!X}%q zEV{Q@?yHht?z;->{?d))Jg3*fwEQ!x!+Ob@3(kw$0rP}U^)b>f?P76$(=dylOAU5h z<&cG!HIt_|uV$HduCrWNF-rdBc}9F&J)iZv(_6ZSl$0HOOUNe&9*B@tP374GH7r9f z=a-AW<>T!7G?8f->^XmToF@AXJZSgWk zZN50Z2Rm`NjGVZ!DPMUcGoSv&n=RQph<~3og%uyLk>%Sok#`F&Y?SSWm7H~Y!Y>6mFuQU9kgMg5${JH40Z{_Xg_8i}H6u8}|87uA8truk&d zt#oqGafhGcy?BnQGIhRiF)m#OZWQ}8-l?6b4^T~`K43IvBdw$3G_n;PkI@)t|J3(r z|5W#=e#Xyfz_Wkwcb?)*A)&w}0iI^oqtQ?Vt8zq+>MJ z#`gK@+ijVjX*R^Pk+xF}q@Sg__ft+Gd4$@5`U%xWnj@$l(p-?Hxwo8ip)4CzuBgdq z%(Q>%hg6ek|5RfqcibyJUThq< zKQZcu=1{8tM)$t+=x+AXuMW5Lb}-C$bbgKU#nvfiQ-Kq$dDFMqIQ2=IPwAY}`J#E# z#p#>q@vbND)wZ{Z=0WO9G`CWlQ~xo_gGTu`Dz%Sr8l8gIPiQTvt&H+)z`|Vo`b$SX zDBCANb1R)A8o$&&G>20A&>U(sFGe|+o^LcZI(J6np}CvR1)U>me_9(*+fsWP^-1TK z_CxQH+MnJRonLw_E$L@6PyUS-NVY?=A0+!havUVp-#&Bp-#&Bp-#&Bp-#&Bp-#&Bp-#&Bp-#&B=7=5T#nWB1(0rhbXmSI-=CzL5Na|<{(N{=!7V>d=jG6koAaC12!Q_ zC9Fe~ntA|%@$N;`Z$A-V5v5*)Ahx&rha0crDD~zWV!O`2wSJw~qArM1bsHi| zEv$-w-5e36{F@+PH&^8Mc}nMu{Qi1oR|M>CMwF^I1W_t{Fk(BugeL-iu>?`7%y7QRf&LaFO1W-F zlsdQ-QHq^Hl$zNHQK~>+1kN)dO0DjMDAm0wqSPi=#C9LQ+O<_}M5zTe5##fI{hYnW zJC7ntUAu`WH7^KJYW*h!?0*hX>dI9_sZSRXrFx!6l=>WkDCH4~DAn*AqEy^%1mgV@ zqSUI-h|Sv){Sl>Vgds}F8wm8{hbT4jCZg0BiNHKwLzMEnf+#iO0Rncqi72)G8lu$M z_lQ!Caft2r?B|G5<7Of-U$YRUhTTDwT5}(P_*#i5mDd*mJG?-YN_81g>gH=isdN@Z zDX#!TDg7=2{_zO`-3da#j~^jQ&5uKrsv3tVHRA=MRAMxu)VEj!;#VSYKc^9;-d;qM zS{#BXwJZ#Q{&yfsy*`2{;!0)ZGJ!`t9dH2%^;A?-9_|Xhf+Nk;reS|DPAO z#v%XbP}Pn^Y{$R0rp6;my^BL^@5(4dsY|g4*fSAPYT6e>saEj_#Lrg*?3#cml|3G@ z^>Zi+Q7R$|0lkYtZ14Yn)v6VbfZoO-|L=PpoQVAQ&)W~Kl@zM@as$4S!^36a*DN`3jsm5awrRJ5$M+ivDxEL7-Bm% zYRyVSl*$^7!1cZ(5JxeHQdvR}rD75hr7pxFN@-sa(DUyI)F)wxQg`AJrJBD-K>y+p zrP_obzmFnoJfc*Fc;xr@|Lv8wNk6uEuH}e8{4_w6D)l!4`Ok#Fe6&E6I^~WiRlF&p z)W-IRQmxw|N>yx%*!rzm3$Y#l$SY49B4D?M2*lw$1pK2DqSQbiL@Dq2h*D2FAxh=$ zizsFBM&SIxh*BjEA)pKYAWG$2k3b!`7g6e7RRqRg8v#G5hbVQwC8AX3mI&xvO9b+O zJEByI_6X?o1VpKJ9*9yqhauo!1CZbE@5g-_{a(=&f&M!ow$Hz;kAQ!+MU)EmMr`jJ z^%vuWD7DfF0sF-vkl*4Es3#&3u*(w!bWtLphZ0e$Z#V+=YY<}l+{ict{QNGWRM&@y zQrVs$kl!K^$alerQnPL%kdFcorAmHApx(KMD785hf&MQbHZLt4hbZOz6oI_-9swQR zhQRObh*C{M5Xh%Nh*E#~AyD6+MIi44B1$=|LX^rBf+*Es8v=F4YXs_!y9mVVTSTdc z?-8iuFCa>FzJ|bky+=S7FCkF3yhUIgaTkSrRbc@d(%<5rOq% zJfc*Oc*MA$Vq*}c3i={Y&q)OQ!wXTW)@J12b>W9zI4?uM-&P_@onDGSy*2@X@l8X1 z@2^2i1lGsy2+aEsM5(o-5Ln+hBj6WK2;}?ah*JObK_LDIA&{pRBcLP85Qxvw2*k5D z0{Joy0X_eUfc}Odpy%Ha$deHWj5i7BKL)YcFUL1TsV<3#?e%H#i0yb?2m*c>g(%fN z9LE&{?}OOpcfTuQJN_{a|Jn$wtC}E?Z{3jJ&&%bF zKpyc%AYLaSO6{G2K%KJqupcoPf&GEeh*J5?2V7=27F&^)a zasS)zviA_M&jSSfS0GSN2?X@?Eduq(OGK%{XAq@&T|~eR8xUBxy+r zki!V%?MDc#>w*wi=bS|#KZYW#69RGZ0s$R;t;4mz9BGQuMnjUJVcbL@)d#4e?=gl#Uo0M4Ml9x-ufc~ej0_q zepVO)>-9)Psa#PA*dYpm`H4VaJ(C2)Q4+TPer=79Ltx$#5ZHH$LVi8Vb{rao*pB_8 z5T#PbA>enR2<%%WAYg~r2wzfsav=iow+DeZK8k?etU{DJz7+wz@I;i_+6z&t(@_NS{VoL7hldf^-x`g8?$<-0 zZf%6XKBp%Fb^TZb*4Hf%@bkt9tS6cyu;2AJ0{e1q2#n(^0y-FjK-`2NP~V0i&`&4= zb#x-4)U8+q{4f!Lbwwni)V3(ZX3xUm2=o(&zMgQR>(I?5A;v?emkP5!-P> z972x&SI-p=L2R%8TWj%T1oj2jA&~DoAxe#(jX>P@Kp_9GM{M)@W8VM&`hBSuV!Ph* ziU^Fe5@LIOKxG8>@w*^UH`PEOe>6kDPi7#n9+`pIKKEnX)f*sCcQruZIlwRk*6(8x z&~*<)sg(N=SYItcV83A;0_%~D2t2>ogn+*`Mqr)fg8Y8HAJ_f$cg3V1uzz_3>bjN) ztgAT!e%S>9zaEUhx~v%j=T$}^PgOu*-_sL;^?nxw^x_Qy`|fWL*#G&2z&hnM0?%hY zA&@7ZAyBt`K%hJbR&?-RtfUf=D9!1zND$Om^3sPkVSPzPQ{K(~^9 zz%G{%*q6SGK>ojmzf#+3;2>4YZ^56UYQODd$K>qvZew-QXgDCZC6asbaOa%OKECTT` z4go)MLVnkqT-A}^U+>Tmf%V@21fJ_wMWDXvg}}b`bOhpj4x&`Y^$5ht83f|kg24J= zGXnMZJ_Obgn-S2T69}w-jv>(B76jH~2N2MSO$g}I1w^S8=Md1bZwTc7|E*WEgdwmm zm56}O#v`!rnSel@odi55dWS&08IQpIh9gjCCLo~G5eVpbJOaA<0fF~}5!=3W=2!&Q zv9So)JpoawY$O8f@hAkI2S*{WPalQA^QtHW_9ea`KW6XWfA{Z>fZaS0(8V4ItZQZ> zpc}IgcuqGK`F$QUH$p%++!4srZ4tPy0SM^SYy|Rx1p&R|zA;{~ZE(WD5d*atZnUemyt>`{Zs2_*FB+cHXX<2wbl|0?!ZnB9NB{BT8BO zB2agYLTsP=H6QtYfr<81`SaT|g9HVT1x zzKcNrNd|}g)!PWf!({~ey^4T;eMVqj{1B*fULmmVJ&nLV_IU*SbUy;R{}O?9=m!M$ zuWlg_M?nbGjdu{(Xa0gfJ^c>?`gtCK^^`vX`)QXD*gratfUbQ(z>mKm5MN&q*q^$O zz&i6S0_){F2z>qp0{d>)5!m+$M8FOK2>4+P0?$3}Ah6#Uhrs&yG6MB`7y`O>AA$Ib zMxdUIL?G|^Bd|U_kHGWxD+sI?z9R5kJplo`CL*v;@eP4GDG`A@`VE2o&O`+A*8iS& z7E=i9GsGkCoGA&=)d&REfl&zL>u3bl9We;3GoldK$4UBP0GuC;fIUAVw*AA^aR{u7 zlK{VuN1&egj==MgqzzCQXEXwF9*MwnwkQPF^-&1;aWn$<3q@eSzx=dHKp-v>5U4NX z5g2a*^2^EOFfa~*yc&;y9!DeOg#R_qCm^uzlZb#l6A*~+1mySgf4ovdAy7xfBak2B zkst5cez!|NApgZ6Q18Vew)Yn|L?EtfBDT2yp%2~aAdokEBH$O@5vZpwAyB8^K)~O2 zBM=9V5ZKR~hd};(fxz>cc?iVS1qAeM3<7>P8Ug*Cg@C`_L13M8AA$T?1F?L82gV6{)SD1uA{k98%aV$VUhc_eeTqO~K=hUwdsITJ@h{x{;==3)P)<1~| z_5gKN>z_Tpni=);PX)kAl>mj!D>oi0luFMG7p%Vh@>~4tdyn{{%7=XZiwm=|`1|g6SdLW=jPZ8LE z4?;jkJ|U22&m&N0T|gl3NCei2R}iRMP9ZS9i-=N3&moW(FCa>}TtvV>Um~C{uMyaf zy@S9y{w)IW_6~u4aou5qJ*t0s(!0j=*~T69V=4M+D;V8v^@S_Yl|@d4#}v`Z)r23PT`2-9@0@j7A`y zBm#NYiop285Lh3sM!=5C5y+RX5m*<#K|sGABT#2QLcqVTA&`&vBcOMF2z-7&0`;RG z0{e0&5vU{L5QvYP2;^md1ilv%gn(|uA+SDwfPh_+fV`T3zf&ITQ1pF-w zfxMIi)F=P@p4JhCK>URup#O;o{Ek3CM-vgK-{KLlUjzbni$&l%UlGXvp$O=5JOXuc zJOcZG@d#Yte?K)9VjFk=7zFJ65&3bJEuZdsia?$I4za!eYpbC`{`*hcSj1Krgeb)L z=b=JiUXy_OAs#V4zfuAM_D?_{z7i1I`FRo$+j0E_#CH6n^{c)b9dGhRpkCgLz`V>x zpnkiDK>czB0liv+!2azn1YX~TK%VtPz%QpEF#k;u*sp1aK>livz&_0Y1fE-sLO>TR z2z;+VAh!MQa{Um9qY()B-#`TF{R0R*-x!R*bMY$(=*KYxN;gN_^A3q?r>;7A7+gb$n3l1TWSG*9Im(2*o-FyW0C3hnbH(e3X z=^6;=Qb)v=Kij(^a9h`)LW=yhcT=Fbsiljx3sKU74(Uf&Rir!WNc{5=Bm`vd`d1R}6LeTG0>eMR8= zR9_MBhbIWE_pT$5pY9`2uRcUzy%T_du3tsqKCdF+ACC~wgYyW~H}?@(C;1`Z4`&eY zrw|0{t2YR&gFYf)cMAgR$@2(2m;DEU`AKq2*q?ZXKz=)k!2LW$V4kiZkk_6g@Er93 z0{sUg(C;M#>f8qi_|0knj8v$Y*yEuf8 zL?E!fh({nEzatPIpAq=JOacOR#Cyc{xgV_``nVzyf#>J(2wX1)fq6&*{51jr9gaYL zeA@W;R)v6H#Uj6-*H|Io4@tm!K8fGY`}LK$LkJpD_fUbF@X^dDKV5_I&Jz9e(^C8-&2~#1I6YAB7+=?jQu>Bp8A5{_pumfp`Sg z6CV)BSMQJ?y+OSZg+TrI4uSP;C<5dC-`{(bj6`6)@D;Ir?nnY+JD!t>!1cos+w1?< z>f0HCINykXK6XH0U&<4KxE_YUdT<>A>zS?y zuYU9Ev3Gw2>X#J=><=tQAdfdipza=pKt0t8fpy;r1oF{*1jaiTfpyAK1pLAef&921 zf%>&J0^_WTzVm*NXJZ8RGgl$-9C$GTd2KTS{<;}~{jxO(%;Pr1 zc7JJWBevs;)e+nAulN1qxZ?x__EiTWVE2&-)Ri+4&^2e|_kLD%Kwy4GA)s3W5YWH> zJui%WhCn<@1nRpO1oG551oGJ@1nQY92hLSP^G zD+24*BM7W}BN4FAH3Zg=9}uOYUm>u6bP<7lTnhsG6BY#abs`Y(^JoP0;T{5YSRexR z#!CeJ?mhzVUqayf&UX>m|9FDHeB44{{eKy;#jDRP1U?^xK>ctRfpzH(1ir`o5rKUs zi9kNLAh6zlhrs^DJp^>89}xIEisuN->pSH4=)M+e{03XBDS-RMkBBujYps!*4k#Z%;QfZ^Lp;~&ao93;h)dp&v zwG`T5ZIqTptEbJ;bgiM*T+6Su(e`QSG*4}jmO-1Pt<-XAE3{o&K5Y{`jxD6^*CuI& zwc}cVR#Fq%E3LeCPWz-)(XPNBs_Efv21#368N>EeYZf+Bfa0 z_D;L5mDN6I@3og&U62W@_F6lymDb*9FSPqwZSA>sR=cO2(TZqywTIdht&a9UJE1++ z{?V#xf!Y+!U#q4~)(&X5wLMxz?S^(ly9|q(quP4ynzm6Zr}=3+vMuJZMSw%tDx=G{?-m_Ewx1Qm*O-<@o2!k{%vvUGq}ES!)&^*)HIvpw zYo-;@+_gcPo7P{`G*`__o2of!K3aEen$}e-s7=&{X}z>;+6Zl&)>j*=W!8FXOSN@c zDQ$_?M_a4)&@yVPG#9O%mRD=64c9to9$Hqdy|!7~s{N&H(K^DHf;(wBwC!3t-9=xd zhiP5(s=B7P(WmI)T3@}J9;3C?hw4#UC*4gC)!g;odaPDiAE$rUoOEYBgKpN>>e1R@ zeUcuhjn`-DDfJopDm|?}U*D={gs;pF({t!M^^1B={h)qF VAM1tnQ~DFVlzvY4 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 z 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 f3)* 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℞^)m9wl3G>v{j9dV=N`cC+>45r>$yy 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

4% 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

>{4;CQ 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 is a hash of the file list with each file's sum, so an unchanged pack diff --git a/ui/src-tauri/src/models.rs b/ui/src-tauri/src/models.rs index 052a54a..cd56340 100644 --- a/ui/src-tauri/src/models.rs +++ b/ui/src-tauri/src/models.rs @@ -5,7 +5,7 @@ //! are fetched as the user (never by the daemon), checked against the //! manifest, and kept in `~/.local/share/deepwork/assets//`; the page //! reads them through the `models://` scheme. Until they are all there the -//! city is drawn with the embedded low-poly kit. +//! app shows the HUD and the download, without the city. //! //! `DEEPWORK_MODELS=

` serves a local directory instead (unchecked), for //! trying a pack before it is published: `DEEPWORK_MODELS=ui/public/models`. @@ -48,7 +48,7 @@ struct Entry { #[derive(Serialize, Clone, Debug, PartialEq)] #[serde(rename_all = "snake_case", tag = "state")] pub enum Status { - /// No pack in this build: the kit only. + /// No pack in this build: no city. None, Downloading { done: u64, diff --git a/ui/src/city/fx.ts b/ui/src/city/fx.ts index a30f797..c32c7b0 100644 --- a/ui/src/city/fx.ts +++ b/ui/src/city/fx.ts @@ -1,6 +1,5 @@ // Particles (smoke, fire, dust, sparks) and falling debris. import * as THREE from "three"; -import { puff } from "./textures"; interface P { x: number; y: number; z: number; @@ -257,3 +256,20 @@ export class Fx { }); } } + +/** A soft round sprite for particles. */ +function puff(): THREE.Texture { + const c = document.createElement("canvas"); + c.width = c.height = 64; + const g = c.getContext("2d")!; + const grad = g.createRadialGradient(32, 32, 0, 32, 32, 32); + grad.addColorStop(0, "rgba(255,255,255,1)"); + grad.addColorStop(0.25, "rgba(255,255,255,0.55)"); + grad.addColorStop(0.6, "rgba(255,255,255,0.15)"); + grad.addColorStop(1, "rgba(255,255,255,0)"); + g.fillStyle = grad; + g.fillRect(0, 0, 64, 64); + const t = new THREE.CanvasTexture(c); + t.colorSpace = THREE.SRGBColorSpace; + return t; +} diff --git a/ui/src/city/kit.ts b/ui/src/city/kit.ts deleted file mode 100644 index 6097f9f..0000000 --- a/ui/src/city/kit.ts +++ /dev/null @@ -1,52 +0,0 @@ -// City theme: the kit of building pieces and trees made in Blender -// (ui/blender/city_kit.py writes public/city-kit.glb). Each piece is split -// by material role ("wall", "window", ...); models.ts stacks pieces into -// buildings and picks the real materials. Geometry carries baked ambient -// occlusion as vertex colours and window panes as cells of the window atlas. -import * as THREE from "three"; -import { GLTFLoader } from "three/examples/jsm/loaders/GLTFLoader.js"; -import type { Kind } from "./plan"; - -export interface Piece { - parts: { role: string; geo: THREE.BufferGeometry }[]; - /** Points marked in the kit (smoke, beacon), piece-local. */ - anchors: Record; -} - -/** Footprint (x, z) each kind's pieces are modelled at; must match city_kit.py. */ -export const NOMINAL: Record = { - cottage: [6.75, 6.25], - shop: [8.75, 8], - apartment: [9.15, 9.15], - office: [9.6, 9.6], - landmark: [10.4, 10.4], -}; - -let pieces: Map | null = null; - -export async function loadKit(url = `${import.meta.env.BASE_URL}city-kit.glb`): Promise { - if (pieces) return; - const gltf = await new GLTFLoader().loadAsync(url); - const out = new Map(); - for (const node of gltf.scene.children) { - node.updateMatrixWorld(true); - const parts: Piece["parts"] = []; - node.traverse((o) => { - const mesh = o as THREE.Mesh; - if (!mesh.isMesh) return; - parts.push({ role: (mesh.material as THREE.Material).name, geo: mesh.geometry.clone().applyMatrix4(mesh.matrixWorld) }); - }); - const anchors: Piece["anchors"] = {}; - for (const [k, v] of Object.entries(node.userData)) { - if (Array.isArray(v) && v.length === 3) anchors[k] = new THREE.Vector3(v[0], v[1], v[2]); - } - out.set(node.name, { parts, anchors }); - } - pieces = out; -} - -export function piece(name: string): Piece { - const p = pieces?.get(name); - if (!p) throw new Error(`city kit: no piece "${name}"`); - return p; -} diff --git a/ui/src/city/land.ts b/ui/src/city/land.ts index 987e8aa..3506da8 100644 --- a/ui/src/city/land.ts +++ b/ui/src/city/land.ts @@ -1,14 +1,13 @@ // City theme: the countryside meshes, from terrain.ts. Smooth terrain // coloured by height and slope (meadow, forest floor, river sand, rock, // snow) with grass and stone detail near the eye, one water plane that -// fills the river and the lake, forests instanced from the trees model (or -// the kit) and boulders of their own (rocks()): lush broadleaf and +// fills the river and the lake, forests instanced from the trees model and +// boulders of their own (rocks()): lush broadleaf and // rainforest giants in the lowlands, conifers higher up, bare rock above the // tree line. import * as THREE from "three"; import { mergeVertices } from "three/examples/jsm/utils/BufferGeometryUtils.js"; -import { piece } from "./kit"; -import { hasReal, realMat, realPiece, tex } from "./real"; +import { realMat, realPiece, tex } from "./real"; import { IMPOSTOR_NEAR, Impostors, nearOnly } from "./impostor"; import { PITCH_X, PITCH_Z, rng, type CityPlan } from "./plan"; import { LAKE, RADIUS, ROAD_Z, WATER, fbm, noise, smoothstep, terrain, type Land as Shape } from "./terrain"; @@ -46,7 +45,6 @@ export class Land { private rockMat: THREE.MeshStandardMaterial | null = null; private rockGeos: [THREE.BufferGeometry, THREE.BufferGeometry][] = []; private waterMat: THREE.MeshStandardMaterial; - private forestMats = new Map(); /** The real woods near the camera, in tiles (see cull()). */ private tiles: { group: THREE.Group; box: THREE.Box3 }[] = []; private nearMats = new Map(); @@ -56,11 +54,11 @@ export class Land { } /** Rebuild for a city of a new size. */ - build(p: CityPlan, imps: Impostors | null = null) { + build(p: CityPlan, imps: Impostors) { this.group.clear(); this.tiles = []; const land = (this.shape = terrain(p.bounds)); - if (!this.groundDetail && hasReal("trees")) { + if (!this.groundDetail) { this.groundDetail = true; detail(this.ground); } @@ -77,7 +75,6 @@ export class Land { setNight(night: number) { this.ground.color.setRGB(1 - 0.55 * night, 1 - 0.55 * night, 1 - 0.42 * night); this.waterMat.color.setHex(0x3d6e86).lerp(C(0x0a1626), night * 0.85); - for (const m of this.forestMats.values()) m.color.setRGB(1 - 0.5 * night, 1 - 0.5 * night, 1 - 0.4 * night); } private terrainMesh(land: Shape): THREE.Mesh { @@ -158,17 +155,8 @@ export class Land { return mesh; } - private mat(role: string): THREE.MeshStandardMaterial { - let m = this.forestMats.get(role); - if (!m) { - m = new THREE.MeshStandardMaterial({ color: 0xffffff, roughness: 0.92, vertexColors: true, flatShading: true }); - this.forestMats.set(role, m); - } - return m; - } - /** Woods and boulders, instanced per model part and per sector so the camera can cull them. */ - private forest(land: Shape, p: CityPlan, imps: Impostors | null) { + private forest(land: Shape, p: CityPlan, imps: Impostors) { const r = rng(0xf0e57); /** s scales x / z, sy height: distant clumps are wide so the canopy closes. */ type Inst = { x: number; y: number; z: number; s: number; sy: number; ry: number; color: number }; @@ -272,8 +260,6 @@ export class Land { const v = new THREE.Vector3(); const sc = new THREE.Vector3(); const col = new THREE.Color(); - // The realistic woods (trees model) draw the kit's forest pieces when loaded. - const real = hasReal("trees"); const white = new THREE.Color(0xffffff); const place = (mesh: THREE.InstancedMesh, list: Inst[], color: (t: Inst) => THREE.Color) => { list.forEach((t, i) => { @@ -286,12 +272,11 @@ export class Land { mesh.receiveShadow = true; return mesh; }; - // Realistic leaves are textured: the kit's greens only tint them, lightened. + // Leaves are textured: the palette greens only tint them, lightened. const tint = (t: Inst) => col.setHex(t.color).lerp(white, 0.45); for (const [key, list] of buckets) { const model = key.split(":")[0]; - const realistic = real && model.startsWith("forest_"); - if (realistic && imps) { + if (model.startsWith("forest_")) { // trees: far trees are impostors (impostor.ts), one InstancedMesh a // model a sector that hides the trees within IMPOSTOR_NEAR of the // camera; those are drawn real, from tiles small enough that only @@ -325,7 +310,7 @@ export class Land { continue; } if (model.startsWith("rock_")) { - // Boulders of their own (rocks()), not the kit's low-poly ones. + // Boulders of their own (rocks()). // Full detail round the town, a light one (about 500 triangles) beyond. const [hi, lo] = this.rocks()[model === "rock_a" ? 0 : 1]; const tint = (t: Inst) => col.setHex(ROCK_TINTS[Math.floor(Math.abs(t.ry * 1000)) % ROCK_TINTS.length]); @@ -335,24 +320,13 @@ export class Land { if (far.length) this.group.add(place(new THREE.InstancedMesh(lo, this.rockMat!, far.length), far, tint)); continue; } - const parts = realistic ? realPiece("trees", model) : piece(model).parts; - for (const { role, geo } of parts) { - const leafy = role === "woods" || role === "firs"; - const material = realistic ? (realMat("trees", role, { wall: -1, accent: 0, roof: 0, signs: 0 }, 0, "forest") as THREE.MeshStandardMaterial) : this.mat(role === "leaf" ? "leaf" : role); - this.group.add( - place(new THREE.InstancedMesh(geo, material, list.length), list, (t) => - realistic ? (leafy ? tint(t) : white) : col.setHex(role === "leaf" ? t.color : role === "bark" ? 0x5a4030 : 0x8a8478), - ), - ); - } } } /** - * Two boulders (rock_a, rock_b at the kit's sizes, about 1 m): a dense - * sphere pushed about by noise and cut by a few cleavage planes, smooth - * shaded, darker in its hollows, with stone on it when the library has - * loaded (triplanar, as boulders have no UVs). + * Two boulders (rock_a, rock_b, about 1 m): a dense sphere pushed about + * by noise and cut by a few cleavage planes, smooth shaded, darker in its + * hollows, with stone on it (triplanar, as boulders have no UVs). */ private rocks(): [THREE.BufferGeometry, THREE.BufferGeometry][] { if (this.rockGeos.length) return this.rockGeos; @@ -361,7 +335,7 @@ export class Land { [rock(19, [0.9, 1.1, 1.3], 8), rock(19, [0.9, 1.1, 1.3], 4)], ]; const m = (this.rockMat = new THREE.MeshStandardMaterial({ vertexColors: true, roughness: 0.92 })); - if (hasReal("trees")) { + { const stone = tex("stone_col"); m.onBeforeCompile = (sh) => { sh.uniforms.tStone = { value: stone }; @@ -399,7 +373,7 @@ const ROCK_TINTS = [0x9a948a, 0x8a8478, 0xa49c90, 0x7c786e, 0x948c80]; const noise3 = (x: number, y: number, z: number) => (noise(x, y) + noise(y + 31.7, z - 7.3) + noise(z + 57.1, x + 13.9)) / 3; /** - * A boulder with radii `size` (x, height, z) like the kit's, base at y = 0: an icosphere + * A boulder with radii `size` (x, height, z) base at y = 0: an icosphere * (`detail` 8 is about 1,600 triangles) pushed out by noise, flattened by a few cleavage planes and * sunk at the bottom; vertex colours darken its hollows and cracks. */ diff --git a/ui/src/city/models.ts b/ui/src/city/models.ts index 5be8254..16da324 100644 --- a/ui/src/city/models.ts +++ b/ui/src/city/models.ts @@ -1,23 +1,15 @@ -// City theme, step 2: 3D models for the plan's specs. Buildings and trees -// are stacked from the Blender kit (kit.ts) with materials picked per -// building and damage, or from a realistic model (real.ts) for the styles -// one replaces; lots, wreckage, rubble and the construction site are built -// here from boxes. Geometry is merged per material to keep draw calls low. +// City theme, step 2: 3D models for the plan's specs. Buildings, trees, +// cars and props are pieces of the realistic models (real.ts), stacked and +// placed per building and damage; lots, wreckage and the construction site +// are laid out here. Geometry is merged per material to keep draw calls low. import * as THREE from "three"; import { mergeGeometries } from "three/examples/jsm/utils/BufferGeometryUtils.js"; -import { NOMINAL, piece } from "./kit"; import { BLOCK_X, BLOCK_Z, LOT, lot, rng, type ParkSpec, type SiteSpec, type Spec } from "./plan"; -import { CAR_PAINTS, DEFS, fountainSpray, groundMat, hasReal, realMat, realPiece, type Paint, type RealDef, waterMat } from "./real"; -import { ATLAS, panes, type Pane } from "./textures"; +import { CAR_PAINTS, DEFS, fountainSpray, groundMat, realMat, realPiece, type Paint, type RealDef, waterMat } from "./real"; export const WALLS = [0xe8d9c0, 0xd9c2a5, 0xc9d3d8, 0xe6c9b5, 0xb9c4b0, 0xd8d0e0, 0xcfb59b, 0xe9e4da]; export const GLASS = [0x7f9bb3, 0x6d8a99, 0x8fa3b8, 0x5d7488, 0x9ab0a8, 0x7a8aa8, 0x8a98b0, 0x6f8c9c]; export const ACCENTS = [0xb5483a, 0x3a6fb5, 0x3a9a6a, 0xc9902a, 0x7a4ab5, 0x2f3a4a]; -/** Cottage roofs, by accent: terracotta, slate, moss, clay, plum, charcoal. */ -const ROOFS = [0xa8503c, 0x56606e, 0x5e6e4a, 0xb8764a, 0x6e4a5a, 0x3e4044]; -const LEAVES = [0x4f7a3a, 0x5d8a42, 0x3f6a34, 0x6a8f3e, 0x48703f]; -const BLOSSOMS = [0xf2a5c0, 0xf7c6d6, 0xe88aa8, 0xf5e0ea]; -const BRICKS = [0x8a4e3c, 0x9a5a44, 0x7a4636, 0xa0664a, 0x6e3e30, 0x94604c]; /** Things the scene animates on a model. Positions are model-local. */ export interface ModelInfo { @@ -33,10 +25,8 @@ export interface ModelInfo { jibBeacons?: THREE.Vector3[]; } -const UP = new THREE.Vector3(0, 1, 0); /** Lots, pavements and park lawns sit at kerb height. */ export const KERB = 0.2; -const CAR_PAINT = [0xa8acb0, 0x2a2e36, 0xa83a32, 0x2f5a8a, 0xbcb8b0, 0x5a6a4a, 0x8a6a3a, 0x3a3e44]; const shared = new Map(); /** The one material of every yard (see Parts' tint). */ @@ -72,12 +62,8 @@ export class Parts { */ constructor(private tint?: THREE.Material) {} - /** - * `cells` moves window panes to another cell of the kit's atlas; `shift` - * adds to UV x, which for realistic glass gives its windows new ids (other - * rooms, curtains and lights). - */ - add(material: THREE.Material, g: THREE.BufferGeometry, x: number, y: number, z: number, rx = 0, ry = 0, rz = 0, scale?: THREE.Vector3, cells?: [number, number], shift = 0) { + /** `shift` adds to UV x, which for glass gives its windows new ids (other rooms, curtains and lights). */ + add(material: THREE.Material, g: THREE.BufferGeometry, x: number, y: number, z: number, rx = 0, ry = 0, rz = 0, scale?: THREE.Vector3, shift = 0) { this.q.setFromEuler(this.e.set(rx, ry, rz)); this.m.compose(new THREE.Vector3(x, y, z), this.q, scale ?? new THREE.Vector3(1, 1, 1)); const geo = g.index ? g.toNonIndexed() : g.clone(); @@ -96,10 +82,6 @@ export class Parts { geo.deleteAttribute("uv"); material = this.tint; } - if (cells) { - const uv = geo.getAttribute("uv") as THREE.BufferAttribute; - for (let i = 0; i < uv.count; i++) uv.setXY(i, uv.getX(i) + cells[0] / ATLAS, uv.getY(i) + cells[1] / ATLAS); - } if (shift) { const uv = geo.getAttribute("uv") as THREE.BufferAttribute; for (let i = 0; i < uv.count; i++) uv.setX(i, uv.getX(i) + shift); @@ -135,295 +117,21 @@ export class Parts { } } -function shade(color: number, damage: number): THREE.Color { - return new THREE.Color(color).multiplyScalar([1, 0.78, 0.5][Math.min(2, damage)]); -} - -// ---- kit materials ----------------------------------------------------------- - -interface RoleLook { - color: number; - rough?: number; - metal?: number; - emissive?: number; - night?: number; - double?: boolean; -} - -/** Roles whose look does not depend on the building. */ -const ROLES: Record = { - trim: { color: 0xe6dfd2, rough: 0.75 }, - stone: { color: 0xa9a094, rough: 0.9 }, - frame: { color: 0xf3f0ea, rough: 0.6 }, - deck: { color: 0x505256, rough: 0.95 }, - canvas: { color: 0xf2ede0, rough: 0.9, double: true }, - board: { color: 0x1d2024, rough: 0.6 }, - shopfront: { color: 0x2a323c, rough: 0.2, metal: 0.4, emissive: 0xffd9a0, night: 0.9 }, - lobby: { color: 0x2a323c, rough: 0.2, metal: 0.4, emissive: 0xffe2b8, night: 0.5 }, - crownlight: { color: 0x8a6a3a, rough: 0.3, metal: 0.3, emissive: 0xffc870, night: 1.6 }, - door: { color: 0x4a2f20, rough: 0.6 }, - metal: { color: 0x8c9298, rough: 0.4, metal: 0.6 }, - dark: { color: 0x2e2c2a, rough: 0.9 }, - gold: { color: 0xd9a441, rough: 0.3, metal: 0.85, emissive: 0xffb84a, night: 0.9 }, - brick: { color: 0x8a4e3c, rough: 0.9 }, - wood: { color: 0x6e4a32, rough: 0.85 }, - bark: { color: 0x5a4030, rough: 1 }, - paint: { color: 0xf0e8d0, rough: 0.7 }, - railglass: { color: 0x5a7080, rough: 0.15, metal: 0.4 }, - crane: { color: 0xe8b020, rough: 0.5, metal: 0.3 }, - concrete: { color: 0x9a9890, rough: 0.95 }, - grate: { color: 0x4a4c50, rough: 0.6, metal: 0.5 }, - birch: { color: 0xe8e4dc, rough: 0.9 }, - carglass: { color: 0x1a2028, rough: 0.1, metal: 0.6 }, - steel: { color: 0x3e5a52, rough: 0.5, metal: 0.5 }, - led: { color: 0x9ab0c8, rough: 0.3, metal: 0.2, emissive: 0xd8ecff, night: 2 }, - water: { color: 0x4a86a0, rough: 0.08, metal: 0.3 }, - tyre: { color: 0x1a1a1a, rough: 0.9 }, - chrome: { color: 0xc8ccd0, rough: 0.3, metal: 0.8 }, - headlight: { color: 0xf0ecd8, rough: 0.3 }, - taillight: { color: 0x8a1810, rough: 0.4 }, - taxisign: { color: 0xf2c12e, rough: 0.5 }, -}; - -const kitShared = new Map(); - -/** A kit material: lit by the baked occlusion in the vertex colours. */ -function kitMat(look: RoleLook, damage: number): THREE.MeshStandardMaterial { - const key = `${JSON.stringify(look)}:${damage}`; - let m = kitShared.get(key); - if (!m) { - m = new THREE.MeshStandardMaterial({ - color: shade(look.color, damage), - roughness: look.rough ?? 0.8, - metalness: look.metal ?? 0, - vertexColors: true, - side: look.double ? THREE.DoubleSide : THREE.FrontSide, - }); - // Burnt-out shops and lobbies stay dark. - if (look.emissive !== undefined && damage < 2) { - m.emissive.setHex(look.emissive); - m.emissiveIntensity = 0; - m.userData.night = look.night; - } - kitShared.set(key, m); - } - return m; -} - -/** Window panes: one atlas cell each, lit at night, smashed when broken. */ -function paneMat(kind: Pane, color: number, damage: number): THREE.MeshStandardMaterial { - const key = `pane:${kind}:${color}:${damage}`; - let m = kitShared.get(key); - if (!m) { - const set = panes(kind); - const broken = damage >= 2; - const glass = kind === "glass"; - m = new THREE.MeshStandardMaterial({ - map: broken ? set.brokenMap : set.map, - emissiveMap: broken ? set.brokenEmissive : set.emissive, - emissive: 0xffffff, - emissiveIntensity: 0, - color: shade(color, damage), - roughness: glass ? 0.12 : 0.25, - metalness: glass ? 0.6 : 0.2, - envMapIntensity: glass ? 1.4 : 1, - vertexColors: true, - }); - m.userData.night = damage === 1 ? 0.35 : 0.6; - kitShared.set(key, m); - } - return m; -} - -type Look = (role: string) => THREE.MeshStandardMaterial; - -/** The plain material for a kit role (bridges, street furniture). */ -export const kitLook: Look = (role) => kitMat(ROLES[role] ?? ROLES.metal, 0); - -/** Materials for a building's roles; night-lit ones are collected in info. */ -function looks(s: Spec, info: ModelInfo): Look { - const office = s.kind === "office"; - const wall = office ? new THREE.Color(GLASS[s.wall]).lerp(new THREE.Color(0xe0e0dc), 0.7).getHex() : WALLS[s.wall]; - const byRole: Record = { - wall: { color: wall, rough: 0.85 }, - roof: { color: ROOFS[s.accent], rough: 0.8 }, - accent: { color: ACCENTS[s.accent], rough: 0.7, double: true }, - sign: { color: ACCENTS[s.accent], emissive: new THREE.Color(ACCENTS[s.accent]).lerp(new THREE.Color(0xffffff), 0.35).getHex(), night: 1.8 }, - spandrel: { color: new THREE.Color(office ? GLASS[s.wall] : 0x4a4e58).multiplyScalar(0.45).getHex(), rough: 0.3, metal: 0.5 }, - leaf: { color: LEAVES[s.seed % LEAVES.length], rough: 0.9 }, - brick: { color: BRICKS[s.wall % BRICKS.length], rough: 0.9 }, - }; - const glass = office ? GLASS[s.wall] : s.kind === "landmark" ? 0xb4c0cc : 0xa8bccc; - const seen = new Set(); - return (role) => { - const m = - role === "window" ? paneMat("window", 0xffffff, s.damage) - : role === "glass" ? paneMat("glass", glass, s.damage) - : kitMat(byRole[role] ?? ROLES[role] ?? { color: 0xff00ff }, s.damage); - if (m.userData.night && !seen.has(m)) { - seen.add(m); - info.night.push(m); - } - return m; - }; -} - -/** Puts a kit piece on the stack at height y, scaled to the footprint and turned by ry. */ -function put(p: Parts, name: string, y: number, sx: number, sz: number, look: Look, r: () => number, ry = 0) { - const cells: [number, number] = [Math.floor(r() * ATLAS), Math.floor(r() * ATLAS)]; - const scale = new THREE.Vector3(sx, 1, sz); - for (const { role, geo } of piece(name).parts) { - p.add(look(role), geo, 0, y, 0, 0, ry, 0, scale, role === "window" || role === "glass" ? cells : undefined); - } - return piece(name).anchors; -} +// ---- buildings ------------------------------------------------------------------- /** - * Stacks the first `floors` storeys of a building from the kit, and its roof - * if `roof`. Returns the height reached, the footprint there, and anchors - * (piece-local, already moved onto the stack). - */ -function stack(p: Parts, s: Spec, look: Look, floors: number, roof: boolean) { - const r = rng(s.seed * 13 + 7); - const variant = (n: number) => "abcd"[Math.floor(r() * n)]; - const [W0, D0] = NOMINAL[s.kind]; - const sx = s.w / W0; - const sz = s.d / D0; - const fh = s.floorH; - const anchors: Record = {}; - let k = 1; - const place = (name: string, y: number, ry = 0) => { - for (const [key, a] of Object.entries(put(p, name, y, sx * k, sz * k, look, r, ry))) { - anchors[key] = new THREE.Vector3(a.x * sx * k, a.y + y, a.z * sz * k).applyAxisAngle(UP, ry); - } - }; - switch (s.style) { - case "modern": - case "aframe": { - const v = s.style === "modern" ? "e" : "f"; - if (floors > 0) place(`cottage_body_${v}`, 0); - if (roof) place(`cottage_roof_${v}`, fh); - return { top: floors * fh, w: s.w, d: s.d, anchors }; - } - case "diner": - case "substation": - case "factory": { - const [g, rf] = s.style === "diner" ? ["shop_ground_d", "shop_roof_d"] : ["factory_ground", "factory_roof"]; - if (floors > 0) place(g, 0); - if (roof) place(rf, fh); - return { top: floors * fh, w: s.w, d: s.d, anchors }; - } - case "townhouse": { - for (let f = 0; f < floors; f++) place(f === 0 ? "town_ground" : "town_floor", f * fh); - if (roof) place("town_roof", floors * fh); - return { top: floors * fh, w: s.w, d: s.d, anchors }; - } - case "round": { - const lower = Math.max(1, Math.round(s.floors * 0.68)); - for (let f = 0; f < floors; f++) { - if (f === lower) { - place("round_setback", f * fh); - k = 0.78; - } - place(f === 0 ? "round_ground" : "round_floor", f * fh); - } - if (roof) place("round_roof", floors * fh); - return { top: floors * fh, w: s.w * k, d: s.d * k, anchors }; - } - case "twist": { - // Each storey turns a little and the tower tapers: a quarter turn in all. - const step = Math.PI / 2 / s.floors; - const at = (f: number) => 1 - 0.14 * (f / s.floors); - for (let f = 0; f < floors; f++) { - k = f === 0 ? 1 : at(f); - place(f === 0 ? "lm3_ground" : "lm3_floor", f * fh, f === 0 ? 0 : f * step); - } - k = at(floors); - if (roof) place("lm3_crown", floors * fh, floors * step); - return { top: floors * fh, w: s.w * k * 0.9, d: s.d * k * 0.9, anchors }; - } - case "tvtower": { - // A concrete shaft with the observation pod three quarters up. - const pod = Math.round(s.floors * 0.74); - for (let f = 0; f < floors; f++) { - if (f === 0) place("tvt_base", 0); - else if (f === pod) place("tvt_pod", f * fh); - else if (f !== pod + 1) place("tvt_shaft", f * fh); - } - if (roof) place("tvt_spire", floors * fh); - k = 0.32; - return { top: floors * fh, w: s.w * k, d: s.d * k, anchors }; - } - } - switch (s.kind) { - case "cottage": { - const v = variant(4); - if (floors > 0) place(`cottage_body_${v}`, 0); - if (roof) place(`cottage_roof_${v}`, fh); - break; - } - case "shop": - case "apartment": { - const shop = s.kind === "shop"; - const pre = shop ? "shop" : "apt"; - const fv = variant(3); - const rv = variant(2); - // Brick walk-ups (apartment c) have their own ground storey and roof. - const ground = shop ? `shop_ground_${fv}` : fv === "c" ? "apt_ground_c" : "apt_ground"; - for (let f = 0; f < floors; f++) place(f === 0 ? ground : `${pre}_floor_${fv}`, f * fh); - if (roof) place(!shop && fv === "c" ? "apt_roof_c" : `${pre}_roof_${rv}`, floors * fh); - break; - } - case "office": { - const fv = variant(3); - const rv = variant(2); - const lower = Math.max(1, Math.round(s.floors * 0.68)); - for (let f = 0; f < floors; f++) { - if (f === lower) { - place("office_setback", f * fh); - k = 0.78; - } - place(f === 0 ? "office_ground" : `office_floor_${fv}`, f * fh); - } - if (roof) place(`office_roof_${rv}`, floors * fh); - break; - } - case "landmark": { - // Art deco stone and gold, or a modern glass tower with sky gardens. - const pre = s.style === "glass" ? "lm2" : "lm"; - const e1 = Math.round(s.floors * 0.5); - const e2 = Math.round(s.floors * 0.8); - let tier = 1; - for (let f = 0; f < floors; f++) { - const t = f < e1 ? 1 : f < e2 ? 2 : 3; - if (t !== tier) place(`${pre}_ledge_${tier}`, f * fh); - tier = t; - place(f === 0 ? `${pre}_ground` : `${pre}_floor_${t}`, f * fh); - } - if (roof) place(`${pre}_crown`, floors * fh); - // Landmark tiers are modelled at their own sizes; k is only the top's. - k = [1, 0.78, 0.56][tier - 1]; - break; - } - } - return { top: floors * fh, w: s.w * k, d: s.d * k, anchors }; -} - -// ---- realistic models ----------------------------------------------------------- - -/** - * The realistic model that draws a spec, if it is loaded. A model takes over - * the kit style it replaces (docs/APP.md) as a whole, until its siblings - * exist to take their own variants of it; siblings (C1 and C2 for the - * classic cottage) share the style, picked per building from its seed. + * The model that draws a spec: its blueprint's, else one of its style's, + * picked per building from its seed (siblings such as C1 and C2 share the + * classic cottage). Null only for the town's lots built in code (water + * tower, square, park: utility()). */ export function realDef(s: Spec): RealDef | null { - if (s.model) return DEFS[s.model] && hasReal(s.model) ? DEFS[s.model] : null; - const defs = Object.values(DEFS).filter((d) => d.kind === s.kind && d.style === s.style && hasReal(d.id)); + if (s.model) return DEFS[s.model] ?? null; + const defs = Object.values(DEFS).filter((d) => d.kind === s.kind && d.style === s.style); return defs.length ? defs[Math.floor(rng(s.seed * 29 + 3)() * defs.length)] : null; } -/** A spec sized and placed for its realistic model (real-world sizes, not the kit's); others unchanged. */ +/** A spec sized and placed for its model (real-world sizes); the town's own lots unchanged. */ export function fitReal(s: T): T { const def = realDef(s); if (!def) return s; @@ -440,11 +148,11 @@ function putReal(p: Parts, def: RealDef, piece: string, paint: Paint, damage: nu for (const { role, geo } of realPiece(def.id, piece)) { const m = realMat(def.id, role, paint, damage); if (info && m.userData.night && !info.night.includes(m as THREE.MeshStandardMaterial)) info.night.push(m as THREE.MeshStandardMaterial); - p.add(m, geo, x, y, z, 0, ry, 0, scale, undefined, role.endsWith("glass") ? shift : 0); + p.add(m, geo, x, y, z, 0, ry, 0, scale, role.endsWith("glass") ? shift : 0); } } -/** Stacks a realistic model's pieces on the lot (at kerb height), like stack() for the kit. */ +/** Stacks a model's pieces on the lot (at kerb height). */ function stackReal(p: Parts, s: Spec, def: RealDef, floors: number, roof: boolean, info: ModelInfo) { const r = rng(s.seed * 13 + 11); const paint = paintOf(s); @@ -465,7 +173,7 @@ function picket(p: Parts, def: RealDef, s: Spec, x0: number, x1: number, z: numb putReal(p, def, "fence_post", paint, 0, null, x1, KERB, z); } -/** The lot round a realistic model; like yard() for the kit. */ +/** The lot round a model: what its kind of building has in front and out back. */ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { const cz = -s.yard; const front = LOT / 2 - s.yard; @@ -478,8 +186,7 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { p.box(paving, LOT - 0.4, KERB, LOT - 0.4, 0, 0, cz); const bin = mat(0x2a4a34, { roughness: 0.6 }); for (let i = 0; i < 3; i++) p.box(bin, 0.7, 1.1, 0.7, half - 0.6 - i * 0.85, KERB, back + 0.7); - if (hasReal("street")) fenceRun(p, "wall_brick", half, back + 0.12, -half, back + 0.12, 1.5); - else p.box(mat(0x7a4636, { roughness: 0.95 }), LOT - 0.4, 1.6, 0.25, 0, KERB, back + 0.12); + fenceRun(p, "wall_brick", half, back + 0.12, -half, back + 0.12, 1.5); break; } case "a2": { @@ -498,17 +205,13 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { x0 = Math.max(x0, b); } if (half - x0 > 0.3) runs.push([x0, half]); - if (hasReal("street")) { - for (const [a, b] of runs) fenceRun(p, "fence_iron", a, fz, b, fz, 0.85); - } else for (const [a, b] of runs) p.box(mat(0x2a2c2e, { metalness: 0.5 }), b - a, 0.9, 0.06, (a + b) / 2, KERB, fz); + for (const [a, b] of runs) fenceRun(p, "fence_iron", a, fz, b, fz, 0.85); const bin = mat(0x3a3e40, { roughness: 0.55, metalness: 0.3 }); for (const [x, z] of [[-5.1, 4.0], [-4.6, 4.0], [0.0, 4.0], [2.6, 4.0]]) p.box(bin, 0.55, 0.95, 0.55, x, KERB, z); for (const x of [-6.8, -5.5, 1.4, 4.2, 5.4]) if (r() < 0.75) shrub(p, x, fz - 0.6, s.seed * 5 + x * 3, KERB, 0.55); tree(p, 4.4, fz - 1.4, 0.45, s.seed + 1, KERB, ["young", "linden", "cherry"]); - if (hasReal("street")) { - for (const x of [-2.6, 2.6]) fenceRun(p, "fence_panel", x, -6.8, x, back + 0.1); - fenceRun(p, "fence_panel", half, back + 0.1, -half, back + 0.1); - } + for (const x of [-2.6, 2.6]) fenceRun(p, "fence_panel", x, -6.8, x, back + 0.1); + fenceRun(p, "fence_panel", half, back + 0.1, -half, back + 0.1); break; } case "c1": { @@ -552,7 +255,7 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { for (const x of [2.2, 3.2]) if (r() < 0.8) shrub(p, x, 4.55, s.seed * 7 + x * 3, KERB, 0.7); tree(p, -half + 1.4, fz - 1.4, 0.6, s.seed + 1, KERB, ["cherry", "birch", "maple", "cherry"]); const yb = -s.d / 2 + 0.6; // the back wall - if (hasReal("street")) for (const x of [-half + 0.1, half - 0.1]) fenceRun(p, "fence_panel", x, yb, x, back + 0.6); + for (const x of [-half + 0.1, half - 0.1]) fenceRun(p, "fence_panel", x, yb, x, back + 0.6); hedge(p, LOT - 0.4, KERB + 1.5, 0.7, 0, 0, back + 0.55, s.seed); tree(p, -half + 2.2, back + 1.6, 0.7, s.seed + 2, KERB, ["young", "cherry", "linden"]); break; @@ -584,10 +287,8 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { const dx = half - 1.7; p.box(mat(0x9e978c, { roughness: 1 }), 2.8, KERB + 0.03, front - cz - 0.6, dx, 0, (front + cz + 0.6) / 2); parked(p, dx, 0.2, 0, s.seed + 3); - if (hasReal("street")) { - fenceRun(p, "fence_rail", -half + 0.2, fz, -0.6, fz); - fenceRun(p, "fence_rail", 0.6, fz, dx - 1.6, fz); - } + fenceRun(p, "fence_rail", -half + 0.2, fz, -0.6, fz); + fenceRun(p, "fence_rail", 0.6, fz, dx - 1.6, fz); const pines = ["spruce", "pine", "spruce", "birch", "pine"]; tree(p, -half + 1.3, front - 2.4, 0.95, s.seed + 1, KERB, pines); tree(p, -half + 1.6, back + 2.0, 1.1, s.seed + 2, KERB, pines); @@ -632,7 +333,7 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { // ambulance bay on the right. p.box(lawn(), LOT - 0.4, KERB, LOT - 0.4, 0, 0, cz); p.box(paving, LOT - 0.4, KERB + 0.01, front - 4.5, 0, 0, (front + 4.5) / 2); - const asphalt = hasReal("street") ? groundMat("asphalt", 6, { roughness: 0.93, color: 0xb4b4b4 }) : mat(0x3a3c40, { roughness: 0.95 }); + const asphalt = groundMat("asphalt", 6, { roughness: 0.93, color: 0xb4b4b4 }); p.box(asphalt, half - 6.5, KERB + 0.012, 8, (half + 6.5) / 2, 0, 0.4); const line = mat(0xd8b83a, { roughness: 0.7 }); for (const z of [-3.2, 4.0]) p.box(line, half - 6.6, KERB + 0.02, 0.1, (half + 6.6) / 2, 0, z); @@ -646,7 +347,7 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { // asphalt playground round the sides and back, hopscotch on it. p.box(lawn(), LOT - 0.4, KERB, LOT - 0.4, 0, 0, cz); p.box(paving, 2.6, KERB + 0.01, front - 5.0, 0, 0, (front + 5.0) / 2); - const asphalt = hasReal("street") ? groundMat("asphalt", 6, { roughness: 0.93, color: 0xb4b4b4 }) : mat(0x3a3c40, { roughness: 0.95 }); + const asphalt = groundMat("asphalt", 6, { roughness: 0.93, color: 0xb4b4b4 }); p.box(asphalt, LOT - 0.4, KERB + 0.005, 5.5 - back, 0, 0, (5.5 + back) / 2); const chalk = mat(0xe8e4d8, { roughness: 0.8 }); for (let i = 0; i < 6; i++) { @@ -654,10 +355,8 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { if (i % 3 === 1) for (const dx of [-0.31, 0.31]) p.box(chalk, 0.5, KERB + 0.012, 0.5, -7.25 + dx, 0, z); else p.box(chalk, 0.5, KERB + 0.012, 0.5, -7.25, 0, z); } - if (hasReal("street")) { - fenceRun(p, "fence_iron", -half, front - 0.3, -1.4, front - 0.3, 1.1); - fenceRun(p, "fence_iron", 1.4, front - 0.3, half, front - 0.3, 1.1); - } + fenceRun(p, "fence_iron", -half, front - 0.3, -1.4, front - 0.3, 1.1); + fenceRun(p, "fence_iron", 1.4, front - 0.3, half, front - 0.3, 1.1); const pole = mat(0xe8e6e0, { roughness: 0.4, metalness: 0.4 }); p.add(pole, new THREE.CylinderGeometry(0.04, 0.07, 9, 10), 4.6, KERB + 4.5, front - 1.2); p.add(mat(0xc9a24e, { roughness: 0.3, metalness: 1 }), new THREE.SphereGeometry(0.1, 10, 8), 4.6, KERB + 9.05, front - 1.2); @@ -674,17 +373,15 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { for (const dx of [-1.7, 1.7]) p.box(yellow, 0.12, KERB + 0.01, front - s.d / 2 - 0.3, x + dx, 0, (front + s.d / 2) / 2); for (let i = 0; i < 4; i++) p.box(yellow, 3.3, KERB + 0.01, 0.14, x, 0, s.d / 2 + 0.5 + i * 0.75); } - if (hasReal("street")) { - fenceRun(p, "wall_brick", half - 0.12, back + 0.12, -half + 0.12, back + 0.12, 1.8); - fenceRun(p, "wall_brick", -half + 0.12, back + 0.12, -half + 0.12, -s.d / 2, 1.8); - } + fenceRun(p, "wall_brick", half - 0.12, back + 0.12, -half + 0.12, back + 0.12, 1.8); + fenceRun(p, "wall_brick", -half + 0.12, back + 0.12, -half + 0.12, -s.d / 2, 1.8); break; } case "s3": { // An asphalt forecourt to the pavement with a car drawn up beside the // steps and shrubs either side of them; behind, a concrete service yard // round the kitchen with bins, a grease drum and gas bottles, fenced. - const asphalt = hasReal("street") ? groundMat("asphalt", 6, { roughness: 0.93, color: 0xb4b4b4 }) : mat(0x3a3c40, { roughness: 0.95 }); + const asphalt = groundMat("asphalt", 6, { roughness: 0.93, color: 0xb4b4b4 }); p.box(asphalt, LOT - 0.4, KERB, LOT - 0.4, 0, 0, cz); const line = mat(0xe8e4d8, { roughness: 0.7 }); for (const x of [-6.9, -1.7]) p.box(line, 0.12, KERB + 0.01, 2.2, x, 0, front - 2.0); @@ -697,7 +394,7 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { p.add(mat(0x3a5a8a, { roughness: 0.5, metalness: 0.3 }), new THREE.CylinderGeometry(0.29, 0.29, 0.88, 14), -half + 0.8, KERB + 0.44, back + 0.7); const gas = mat(0xe8e6e0, { roughness: 0.4, metalness: 0.2 }); for (const x of [-5.2, -4.6]) p.add(gas, new THREE.CapsuleGeometry(0.19, 0.95, 4, 12), x, KERB + 0.67, -3.0); - if (hasReal("street")) fenceRun(p, "fence_panel", half, back + 0.1, -half, back + 0.1); + fenceRun(p, "fence_panel", half, back + 0.1, -half, back + 0.1); break; } case "s4": { @@ -718,14 +415,9 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { const yardZ = -5.2; // the back wall p.box(mat(0x4a5a3e, { roughness: 0.6, metalness: 0.4 }), 3.4, 1.3, 1.7, -3.2, KERB, (yardZ + back) / 2, 0.04); p.box(mat(0x5a4a3e, { roughness: 0.8, metalness: 0.5 }), 1.6, 0.4, 0.9, 2.6, KERB, (yardZ + back) / 2, 0.3); - if (hasReal("street")) { - fenceRun(p, "wall_brick", half - 0.12, back + 0.12, -half + 0.12, back + 0.12, 1.8); - fenceRun(p, "wall_brick", -half + 0.12, back + 0.12, -half + 0.12, yardZ, 1.8); - fenceRun(p, "wall_brick", half - 0.12, yardZ, half - 0.12, back + 0.12, 1.8); - } else { - const wall = mat(0x7a4636, { roughness: 0.95 }); - p.box(wall, LOT - 0.4, 1.8, 0.25, 0, KERB, back + 0.12); - } + fenceRun(p, "wall_brick", half - 0.12, back + 0.12, -half + 0.12, back + 0.12, 1.8); + fenceRun(p, "wall_brick", -half + 0.12, back + 0.12, -half + 0.12, yardZ, 1.8); + fenceRun(p, "wall_brick", half - 0.12, yardZ, half - 0.12, back + 0.12, 1.8); break; } case "a3": { @@ -745,7 +437,7 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { const backWall = -s.d / 2 + 0.3; p.box(paving, 1.6, KERB + 0.02, backWall - back, 0, 0, (backWall + back) / 2); hedge(p, LOT - 0.4, KERB + 1.2, 0.7, 0, 0, back + 0.5, s.seed + 3); - if (hasReal("street")) furniture(p, "bench", -3.5, KERB, back + 1.6, Math.PI); + furniture(p, "bench", -3.5, KERB, back + 1.6, Math.PI); break; } case "o1": { @@ -756,9 +448,9 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { const fz = s.d / 2; for (const sx of [-1, 1]) { planter(p, sx * 5.6, front - 1.3, s.seed + (sx > 0 ? 1 : 2)); - if (hasReal("street")) furniture(p, "bench", sx * 3.3, KERB, front - 1.3, 0); + furniture(p, "bench", sx * 3.3, KERB, front - 1.3, 0); } - if (hasReal("street")) for (let i = 0; i < 5; i++) furniture(p, "bollard", -2.4 + i * 1.2, KERB, front - 0.45); + for (let i = 0; i < 5; i++) furniture(p, "bollard", -2.4 + i * 1.2, KERB, front - 0.45); p.box(mat(0x6a6a6c, { roughness: 0.6 }), 4.4, 0.02, 1.6, 0, KERB, fz + 0.9); const bin = mat(0x2a3a4a, { roughness: 0.6 }); for (let i = 0; i < 3; i++) p.box(bin, 1.2, 1.3, 1.0, -half + 1.0 + i * 1.3, KERB, back + 0.9); @@ -768,7 +460,7 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { // Granite paving to the pavement, heritage lamps either side of the // portal; behind, the bins by the service door. p.box(mat(0x9c9890, { roughness: 0.6 }), LOT - 0.4, KERB, LOT - 0.4, 0, 0, cz); - if (hasReal("street")) for (const sx of [-1, 1]) furniture(p, "lamp_heritage", sx * 4.5, KERB, front - 0.4, 0); + for (const sx of [-1, 1]) furniture(p, "lamp_heritage", sx * 4.5, KERB, front - 0.4, 0); const bin = mat(0x2a3a4a, { roughness: 0.6 }); for (let i = 0; i < 3; i++) p.box(bin, 1.0, 1.2, 0.5, -half + 1.0 + i * 1.1, KERB, back + 0.3); break; @@ -779,16 +471,14 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { // cars stand (white and dark blue) by a brick wall. p.box(paving, LOT - 0.4, KERB, LOT - 0.4, 0, 0, cz); const yardZ = -s.d / 2; - const asphalt = hasReal("street") ? groundMat("asphalt", 6, { roughness: 0.93, color: 0xb4b4b4 }) : mat(0x3a3c40, { roughness: 0.95 }); + const asphalt = groundMat("asphalt", 6, { roughness: 0.93, color: 0xb4b4b4 }); p.box(asphalt, LOT - 0.4, KERB + 0.01, yardZ - back, 0, 0, (yardZ + back) / 2); const line = mat(0xe8e4d8, { roughness: 0.7 }); for (const x of [-4.6, -1.6, 1.4, 4.4]) p.box(line, 0.1, KERB + 0.02, 2.2, x, 0, (yardZ + back) / 2); parked(p, -3.1, (yardZ + back) / 2, Math.PI / 2, s.seed + 3, KERB, { name: "estate", paint: 0 }); parked(p, 2.9, (yardZ + back) / 2, Math.PI / 2, s.seed + 4, KERB, { name: "sedan", paint: 5 }); - if (hasReal("street")) { - fenceRun(p, "wall_brick", half - 0.12, back + 0.12, -half + 0.12, back + 0.12, 1.8); - for (const sx of [-1, 1]) furniture(p, "bollard", sx * 1.8, KERB, front - 0.45); - } + fenceRun(p, "wall_brick", half - 0.12, back + 0.12, -half + 0.12, back + 0.12, 1.8); + for (const sx of [-1, 1]) furniture(p, "bollard", sx * 1.8, KERB, front - 0.45); break; } case "e3": { @@ -796,7 +486,7 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { // it; lawns down the sides and behind, a tree at each back corner. p.box(lawn(), LOT - 0.4, KERB, LOT - 0.4, 0, 0, cz); p.box(mat(0x9c9890, { roughness: 0.7 }), LOT - 0.4, KERB + 0.01, front - 4.0, 0, 0, (front + 4.0) / 2); - if (hasReal("street")) for (const sx of [-1, 1]) { + for (const sx of [-1, 1]) { furniture(p, "lamp_heritage", sx * 6.4, KERB, front - 0.5, 0); furniture(p, "bench", sx * 5.6, KERB, 4.6, 0); } @@ -808,13 +498,13 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { // under the emergency canopy (h2_hospital.py, x 2.3 to 7.8) with an // ambulance drawn up, a drop-off line; a service road behind. p.box(paving, LOT - 0.4, KERB, LOT - 0.4, 0, 0, cz); - const asphalt = hasReal("street") ? groundMat("asphalt", 6, { roughness: 0.93, color: 0xb4b4b4 }) : mat(0x3a3c40, { roughness: 0.95 }); + const asphalt = groundMat("asphalt", 6, { roughness: 0.93, color: 0xb4b4b4 }); const dz = 1.5; // the podium's front, building-local (CAN / 2) p.box(asphalt, half - 2.2, KERB + 0.012, front - dz, (half + 2.2) / 2, 0, (front + dz) / 2); p.box(mat(0xd8382a, { roughness: 0.7 }), half - 2.4, KERB + 0.02, 0.12, (half + 2.4) / 2, 0, dz + 0.3); parked(p, 5.2, (front + dz) / 2 + 0.2, 0, s.seed + 3, KERB, { name: "van", paint: 0 }); p.box(asphalt, LOT - 0.4, KERB + 0.01, Math.max(0.5, -s.d / 2 - back), 0, 0, (-s.d / 2 + back) / 2); - if (hasReal("street")) for (const x of [-6.6, -4.6]) furniture(p, "bench", x, KERB, front - 1.2, 0); + for (const x of [-6.6, -4.6]) furniture(p, "bench", x, KERB, front - 1.2, 0); break; } case "p2": { @@ -824,7 +514,7 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { const coal = mat(0x1c1c1e, { roughness: 0.95 }); p.add(coal, new THREE.ConeGeometry(2.2, 1.6, 9), -4.5, KERB + 0.8, -s.d / 2 + 0.2); p.add(coal, new THREE.ConeGeometry(1.6, 1.1, 8), -1.8, KERB + 0.55, -s.d / 2 + 0.6); - if (hasReal("street")) fenceRun(p, "fence_panel", half, back + 0.1, -half, back + 0.1); + fenceRun(p, "fence_panel", half, back + 0.1, -half, back + 0.1); break; } case "w2": { @@ -849,15 +539,9 @@ function realYard(p: Parts, rp: Parts, s: Spec, def: RealDef, r: () => number) { for (let i = 0; i < 2; i++) p.box(bin, 0.7, 1.1, 0.7, -half + 0.6 + i * 0.85, KERB, yardZ - 0.6); p.box(mat(0x3a4048, { roughness: 0.6, metalness: 0.3 }), 1.6, 1.3, 1.1, -half + 3.0, KERB, yardZ - 0.75); parked(p, 2.2 + r() * 1.5, (yardZ + back) / 2 + 0.2, Math.PI / 2, s.seed + 3); - if (hasReal("street")) { - fenceRun(p, "wall_brick", half - 0.12, back + 0.12, -half + 0.12, back + 0.12, 1.45); - fenceRun(p, "wall_brick", -half + 0.12, back + 0.12, -half + 0.12, yardZ, 1.45); - fenceRun(p, "wall_brick", half - 0.12, yardZ, half - 0.12, back + 0.12, 1.45); - } else { - const wall = mat(0x7a4636, { roughness: 0.95 }); - p.box(wall, LOT - 0.4, 1.5, 0.25, 0, KERB, back + 0.12); - for (const sx of [-1, 1]) p.box(wall, 0.25, 1.5, yardZ - back, sx * (half - 0.12), KERB, (yardZ + back) / 2); - } + fenceRun(p, "wall_brick", half - 0.12, back + 0.12, -half + 0.12, back + 0.12, 1.45); + fenceRun(p, "wall_brick", -half + 0.12, back + 0.12, -half + 0.12, yardZ, 1.45); + fenceRun(p, "wall_brick", half - 0.12, yardZ, half - 0.12, back + 0.12, 1.45); break; } } @@ -878,8 +562,7 @@ function wreckTop(p: Parts, w: number, d: number, y: number, color: number, r: ( } } -const TREES = ["tree_a", "tree_a", "tree_b", "tree_b", "tree_c", "tree_d", "tree_d", "tree_e", "tree_f"]; -/** Realistic species, by how common they are in town. */ +/** Tree species, by how common they are in town. */ export const SPECIES = ["maple", "linden", "oak", "maple", "linden", "birch", "cherry", "young", "spruce", "oak", "birch", "maple", "pine", "poplar", "linden", "cherry"]; const SHRUBS = ["bush", "bush", "bush_wide", "shrub", "flowers"]; @@ -897,20 +580,13 @@ function gravelMat(color: number, tile = 2.4): THREE.Material { return groundMat("gravel", tile, { roughness: 1, normal: 0.7, color }); } -/** A lawn: mown grass from the realistic library when loaded, else flat green. */ +/** A lawn: mown grass. */ export function lawn(): THREE.Material { - return hasReal("trees") ? groundMat("grass", 2.2, { roughness: 0.95, normal: 0.8, color: LAWN_TINT }) : mat(0x6f9a4f, { roughness: 1 }); + return groundMat("grass", 2.2, { roughness: 0.95, normal: 0.8, color: LAWN_TINT }); } -/** - * A clipped hedge where a box would be (w along x, d along z, from y up to - * y + h): realistic segments stretched to fit when loaded, else the box. - */ +/** A clipped hedge filling a box (w along x, d along z, from y up to y + h): segments stretched to fit. */ export function hedge(p: Parts, w: number, h: number, d: number, x: number, y: number, z: number, seed: number) { - if (!hasReal("trees")) { - p.box(mat(0x3f6a34, { flatShading: true }), w, h, d, x, y, z); - return; - } const alongX = w >= d; const L = alongX ? w : d; const D = alongX ? d : w; @@ -923,7 +599,7 @@ export function hedge(p: Parts, w: number, h: number, d: number, x: number, y: n } } -/** A piece of the realistic street furniture; `phase` ("a" / "b") picks a crossing's signal cycle. */ +/** A piece of street furniture; `phase` ("a" / "b") picks a crossing's signal cycle. */ export function furniture(p: Parts, name: string, x: number, y: number, z: number, ry = 0, scale?: THREE.Vector3, phase = "") { for (const { role, geo } of realPiece("street", name)) p.add(realMat("street", role, tintOf(0), 0, phase), geo, x, y, z, 0, ry, 0, scale); } @@ -952,9 +628,8 @@ export function fenceRun(p: Parts, name: string, x0: number, z0: number, x1: num } } -/** A garden shrub (nothing without the realistic trees: the kit has none). */ +/** A garden shrub. */ export function shrub(p: Parts, x: number, z: number, seed: number, y = KERB, s = 1) { - if (!hasReal("trees")) return; const r = rng(Math.floor(seed)); const name = SHRUBS[Math.floor(r() * SHRUBS.length)]; const k = s * (0.8 + r() * 0.4); @@ -964,59 +639,26 @@ export function shrub(p: Parts, x: number, z: number, seed: number, y = KERB, s for (const { role, geo } of realPiece("trees", name)) p.add(realMat("trees", role, tint, 0), geo, x, y, z, 0, ry, 0, scale); } -/** A tree; `s` was the kit's scale (0.35-1.2), which picks the realistic tree's size too; `species` the realistic ones to pick from. */ +/** A tree; `s` (0.35-1.2) picks its size, `species` what it may be. */ export function tree(p: Parts, x: number, z: number, s: number, seed: number, y = 0, species = SPECIES) { const r = rng(seed); - if (hasReal("trees")) { - const name = species[Math.floor(r() * species.length)]; - const k = 0.5 + 0.55 * s; - const scale = new THREE.Vector3(k, k * (0.88 + r() * 0.24), k); - const ry = r() * Math.PI * 2; - const tint = tintOf(Math.floor(r() * 6)); - for (const { role, geo } of realPiece("trees", name)) p.add(realMat("trees", role, tint, 0), geo, x, y, z, 0, ry, 0, scale); - return; - } - const name = TREES[Math.floor(r() * TREES.length)]; - const leaf = kitMat({ color: LEAVES[Math.floor(r() * LEAVES.length)], rough: 0.9 }, 0); - const roles: Record = { - leaf, - blossom: kitMat({ color: BLOSSOMS[Math.floor(r() * BLOSSOMS.length)], rough: 0.9 }, 0), - birch: kitMat(ROLES.birch, 0), - bark: kitMat(ROLES.bark, 0), - }; - const scale = new THREE.Vector3(s, s * (0.85 + r() * 0.3), s); + const name = species[Math.floor(r() * species.length)]; + const k = 0.5 + 0.55 * s; + const scale = new THREE.Vector3(k, k * (0.88 + r() * 0.24), k); const ry = r() * Math.PI * 2; - for (const { role, geo } of piece(name).parts) p.add(roles[role] ?? roles.bark, geo, x, y, z, 0, ry, 0, scale); + const tint = tintOf(Math.floor(r() * 6)); + for (const { role, geo } of realPiece("trees", name)) p.add(realMat("trees", role, tint, 0), geo, x, y, z, 0, ry, 0, scale); } -/** Realistic cars that park on drives and in bays, by how common they are. */ +/** Cars that park on drives and in bays, by how common they are. */ const PARKED = ["hatch", "sedan", "estate", "suv", "hatch", "sedan", "suv", "coupe", "pickup", "van", "estate", "hatch"]; -/** A parked car, nose toward +z before ry: a realistic one if they are loaded, else from the traffic kit. */ +/** A parked car, nose toward +z before ry. */ export function parked(p: Parts, x: number, z: number, ry: number, seed: number, y = KERB, pick?: { name?: string; paint?: number }) { const r = rng(seed); - if (hasReal("cars")) { - const name = pick?.name ?? PARKED[Math.floor(r() * PARKED.length)]; - const paint: Paint = { wall: pick?.paint ?? Math.floor(r() * CAR_PAINTS.length), accent: 0, roof: 0, signs: 0 }; - for (const { role, geo } of realPiece("cars", name)) p.add(realMat("cars", role, paint, 0), geo, x, y, z, 0, ry, 0); - return; - } - const model = ["car_sedan", "car_hatch", "car_sedan", "car_van"][Math.floor(r() * 4)]; - const body = kitMat({ color: CAR_PAINT[Math.floor(r() * CAR_PAINT.length)], rough: 0.5, metal: 0.15 }, 0); - for (const { role, geo } of piece(model).parts) p.add(role === "body" ? body : kitMat(ROLES[role] ?? ROLES.dark, 0), geo, x, y, z, 0, ry, 0); -} - -/** Parking bays: a strip of asphalt with lines and some cars, centred on (x, z), bays along x. */ -function parking(p: Parts, x: number, z: number, w: number, d: number, fill: number, seed: number) { - const r = rng(seed); - p.box(mat(0x45474b, { roughness: 0.95 }), w, 0.04, d, x, KERB, z); - const bays = Math.floor(w / 2.8); - const line = mat(0xe8e6de, { roughness: 0.7 }); - for (let i = 0; i <= bays; i++) p.box(line, 0.12, 0.05, Math.min(5, d - 0.4), x - (bays * 2.8) / 2 + i * 2.8, KERB, z - d / 2 + Math.min(5, d - 0.4) / 2 + 0.2); - for (let i = 0; i < bays; i++) { - if (r() > fill) continue; - parked(p, x - (bays * 2.8) / 2 + (i + 0.5) * 2.8, z - d / 2 + 2.6, 0, seed * 31 + i); - } + const name = pick?.name ?? PARKED[Math.floor(r() * PARKED.length)]; + const paint: Paint = { wall: pick?.paint ?? Math.floor(r() * CAR_PAINTS.length), accent: 0, roof: 0, signs: 0 }; + for (const { role, geo } of realPiece("cars", name)) p.add(realMat("cars", role, paint, 0), geo, x, y, z, 0, ry, 0); } const planter = (p: Parts, x: number, z: number, seed: number, s = 0.55) => { @@ -1025,113 +667,8 @@ const planter = (p: Parts, x: number, z: number, seed: number, s = 0.55) => { }; /** - * The lot around a building: lawn or paving, a way in from the street, and - * what the type needs out back (a garden, parking, a loading yard). The - * building's centre is the origin and its front faces +z. - */ -function yard(p: Parts, s: Spec, r: () => number) { - const cz = -s.yard; - const front = LOT / 2 - s.yard; - const back = -LOT / 2 - s.yard; - const grass = lawn(); - const paving = mat(0xbab4a8, { roughness: 0.9 }); - const concrete = mat(0xa29e96, { roughness: 0.95 }); - const half = LOT / 2 - 0.2; - const ground = (m: THREE.Material) => p.box(m, LOT - 0.4, KERB, LOT - 0.4, 0, 0, cz); - const path = (x: number, w = 1.4) => p.box(paving, w, KERB + 0.03, front - s.d / 2, x, 0, (front + s.d / 2) / 2); - switch (s.kind) { - case "cottage": { - ground(grass); - const side = r() < 0.5 ? -1 : 1; - // A drive up to the garage (modern) or along the side of the house, a - // car on it, and a path to the door. - const modern = s.style === "modern"; - const dx = modern ? s.w * 0.3 : side * (s.w / 2 + 2.2); - const dw = modern ? 2.6 : 2.4; - const dEnd = modern ? s.d / 2 : -s.d / 4; - p.box(concrete, dw, KERB + 0.03, front - dEnd, dx, 0, (front + dEnd) / 2); - parked(p, dx, modern ? s.d / 2 + 2.6 : 0.4, 0, s.seed + 3); - const px = modern ? s.w * 0.05 : 0; - path(px, 1.2); - // Hedge along the front, broken for the path and the drive. - const gaps = [[dx - dw / 2 - 0.1, dx + dw / 2 + 0.1], [px - 0.7, px + 0.7]].sort((a, b) => a[0] - b[0]); - let x0 = -half; - for (const [g0, g1] of [...gaps, [half, half]]) { - if (g0 > x0 + 0.4) hedge(p, g0 - x0, KERB + 0.75, 0.6, (x0 + g0) / 2, 0, front - 0.5, s.seed); - x0 = Math.max(x0, g1); - } - // Garden: trees, maybe a shed, and a fence round the back. - tree(p, -side * (s.w / 2 + 2.0), s.d / 2 + 1.8, 0.7, s.seed + 1, KERB); - tree(p, (r() - 0.5) * s.w, back + 2.2, 0.85, s.seed + 2, KERB); - if (r() < 0.6) p.box(mat(0x7a5a3e), 1.6, 2.0, 1.4, -side * (half - 1.2), KERB, back + 1.2); - const run = LOT / 2 + s.yard; - if (hasReal("street")) { - // Close-board or post-and-rail round the back garden. - const kind = r() < 0.6 ? "fence_panel" : "fence_rail"; - const h = kind === "fence_panel" ? 0.85 : 1; - fenceRun(p, kind, half, back + 0.25, -half, back + 0.25, h); - fenceRun(p, kind, -half, back + 0.25, -half, back + 0.25 + run, h); - fenceRun(p, kind, half, back + 0.25 + run, half, back + 0.25, h); - } else { - const fence = mat(0xe8e0d0, { roughness: 0.8 }); - p.box(fence, LOT - 0.4, 1.1, 0.08, 0, KERB, back + 0.25); - for (const sx of [-1, 1]) p.box(fence, 0.08, 1.1, run, sx * half, KERB, back + run / 2 + 0.25); - } - break; - } - case "shop": { - ground(s.style === "factory" ? concrete : paving); - if (s.style === "factory") { - // Loading yard out back: pallets, a skip and a van at the dock. - parked(p, -s.w * 0.25, s.d / 2 + 2.8, 0, s.seed + 7); - const wood = mat(0x8a6a40, { roughness: 0.9 }); - for (let i = 0; i < 6; i++) p.box(wood, 1.2, 0.9 + r() * 0.9, 1.0, -half + 1 + (i % 3) * 1.4, KERB, back + 1 + Math.floor(i / 3) * 1.3); - p.box(mat(0x3a6a3a, { roughness: 0.7, metalness: 0.3 }), 3.2, 1.4, 1.8, half - 2, KERB, back + 1.3); - p.box(mat(0x2a2c2e, { metalness: 0.5 }), LOT - 0.4, 2.0, 0.06, 0, KERB, back + 0.1); - } else { - // Shoppers' parking behind, benches and planters at the front. - parking(p, 0, back + 3.2, LOT - 1, 5.8, 0.7, s.seed + 5); - planter(p, -s.w / 2 + 0.4, front - 0.9, s.seed + 11, 0.45); - planter(p, s.w / 2 - 0.4, front - 0.9, s.seed + 12, 0.45); - } - break; - } - case "apartment": { - ground(grass); - path(0, s.style === "townhouse" ? s.w : 2); - if (s.style !== "townhouse") { - tree(p, -s.w / 2 + 0.8, front - 1.2, 0.6, s.seed + 1, KERB); - tree(p, s.w / 2 - 0.8, front - 1.2, 0.6, s.seed + 2, KERB); - } else { - if (hasReal("street")) fenceRun(p, "fence_iron", -half, front - 0.3, half, front - 0.3, 0.75); - else p.box(mat(0x2a2c2e, { metalness: 0.5 }), LOT - 0.4, 0.9, 0.06, 0, KERB, front - 0.3); - } - parking(p, 0, back + 3.2, LOT - 1, 5.8, 0.8, s.seed + 5); - break; - } - case "office": { - ground(paving); - // A plaza out front with trees in planters, a smoking-area bench at the back. - for (const sx of [-1, 1]) { - planter(p, sx * (s.w / 2 + 1.6), front - 1.3, s.seed + (sx > 0 ? 1 : 2)); - planter(p, sx * (s.w / 2 + 1.6), cz, s.seed + (sx > 0 ? 3 : 4)); - } - p.box(mat(0x8f8a80, { roughness: 0.9 }), s.w * 0.7, 0.05, front - s.d / 2 - 0.6, 0, KERB, (front + s.d / 2) / 2); - parking(p, 0, back + 3.0, LOT - 1, 5.6, 0.85, s.seed + 5); - break; - } - case "landmark": { - ground(mat(0xc8c0b0, { roughness: 0.85 })); - for (const [sx, sz] of [[-1, -1], [1, -1], [-1, 1], [1, 1]]) planter(p, sx * (half - 1.1), sz * (half - 1.1) + cz, s.seed + sx * 3 + sz, 0.5); - p.box(mat(0xd9a441, { roughness: 0.3, metalness: 0.85 }), LOT - 3, 0.05, 0.25, 0, KERB, front - 0.6); - break; - } - } -} - -/** - * Stand-ins for buildings the town provides until they have models: a water - * tower, and a square or a park on one lot. Local frame: the lot's centre is + * The town's lots built here rather than modelled: a water tower, and a + * square or a park on one lot. Local frame: the lot's centre is * `yard` behind the origin, the street in front (+z). */ function utility(s: Spec): { group: THREE.Group; info: ModelInfo } { @@ -1141,56 +678,27 @@ function utility(s: Spec): { group: THREE.Group; info: ModelInfo } { const info: ModelInfo = { height: 4, emitters: [], beacons: [], night: [], debris: 0x7a7570 }; const cz = -s.yard; const half = LOT / 2 - 0.4; - if (s.style === "water" && hasReal("civic")) { + if (s.style === "water") { // An elevated steel tank (civic.py), 22 m to its vent; broken, it leans. p.box(lawn(), LOT - 0.4, KERB + 0.04, LOT - 0.4, 0, 0, cz); const lean = s.damage >= 2 ? 0.07 : 0; civic(p, "water_tower", 0, KERB, cz, { rx: lean, rz: lean * 0.6, damage: s.damage }); - if (hasReal("street")) fenceRun(p, "fence_rail", -half, cz + half, half, cz + half, 0.9); + fenceRun(p, "fence_rail", -half, cz + half, half, cz + half, 0.9); info.height = KERB + 21.9; info.beacons.push(new THREE.Vector3(0, KERB + 22.0, cz)); - } else if (s.style === "water") { - p.box(lawn(), LOT - 0.4, KERB + 0.04, LOT - 0.4, 0, 0, cz); - const steel = mat(0x8c96a0, { metalness: 0.6, roughness: 0.45 }); - const tank = mat(s.damage ? 0x6a6e70 : 0xc8ccd0, { metalness: 0.5, roughness: 0.4 }); - const legH = s.damage >= 2 ? 9 : 13; - for (const [lx, lz] of [[-2.4, -2.4], [2.4, -2.4], [-2.4, 2.4], [2.4, 2.4]]) p.box(steel, 0.35, legH, 0.35, lx, KERB, cz + lz); - for (const y of [4, 8.5]) { - p.box(steel, 5.2, 0.15, 0.15, 0, KERB + y, cz - 2.4); - p.box(steel, 5.2, 0.15, 0.15, 0, KERB + y, cz + 2.4); - p.box(steel, 0.15, 0.15, 5.2, -2.4, KERB + y, cz); - p.box(steel, 0.15, 0.15, 5.2, 2.4, KERB + y, cz); - } - const top = KERB + legH; - p.cyl(tank, 3.4, 3.4, 4.4, 0, top, cz, 24); - p.add(tank, new THREE.ConeGeometry(3.6, 1.8, 24), 0, top + 4.4 + 0.9, cz); - p.box(steel, 0.5, top + 4.4, 0.1, 0, 0, cz + 3.45); - if (hasReal("street")) fenceRun(p, "fence_rail", -half, cz + half, half, cz + half, 0.9); - info.height = top + 6.2; - info.beacons.push(new THREE.Vector3(0, top + 6.3, cz)); } else { const park = s.style === "park"; - const real = hasReal("street"); - p.box(park ? lawn() : real ? groundMat("pave", 3.6, { roughness: 0.88, color: 0xe6e0d4 }) : mat(0xb9b2a6, { roughness: 0.9 }), LOT - 0.4, KERB + 0.04, LOT - 0.4, 0, 0, cz); - if (park) p.box(real ? gravelMat(0xd8ccb0) : mat(0xc8bfae, { roughness: 1 }), 2.2, KERB + 0.06, LOT - 0.4, 0, 0, cz); - if (hasReal("civic")) { - const water = (role: string) => (role === "water" ? waterMat({ amp: 0.5, scale: 2.5, ring: [s.x + cz * Math.sin(s.rot), s.z + cz * Math.cos(s.rot)] }) : undefined); - civic(p, "fountain", 0, KERB, cz, { scale: new THREE.Vector3(0.85, 0.85, 0.85), swap: water }); - if (s.damage === 0) p.extra(fountainSpray(0, KERB, cz, 0.85)); - } else { - const stone = mat(0xd8d2c4, { roughness: 0.8 }); - const water = mat(0x4f7d93, { metalness: 0.3, roughness: 0.15 }); - p.cyl(stone, 2.6, 2.8, 0.6, 0, KERB, cz, 24); - p.cyl(water, 2.3, 2.3, 0.08, 0, KERB + 0.5, cz, 24); - p.cyl(stone, 0.35, 0.5, 1.8, 0, KERB + 0.6, cz, 10); - p.cyl(stone, 0.9, 0.2, 0.3, 0, KERB + 2.4, cz, 12); - } + p.box(park ? lawn() : groundMat("pave", 3.6, { roughness: 0.88, color: 0xe6e0d4 }), LOT - 0.4, KERB + 0.04, LOT - 0.4, 0, 0, cz); + if (park) p.box(gravelMat(0xd8ccb0), 2.2, KERB + 0.06, LOT - 0.4, 0, 0, cz); + const water = (role: string) => (role === "water" ? waterMat({ amp: 0.5, scale: 2.5, ring: [s.x + cz * Math.sin(s.rot), s.z + cz * Math.cos(s.rot)] }) : undefined); + civic(p, "fountain", 0, KERB, cz, { scale: new THREE.Vector3(0.85, 0.85, 0.85), swap: water }); + if (s.damage === 0) p.extra(fountainSpray(0, KERB, cz, 0.85)); const n = park ? 6 : 4; for (let i = 0; i < n; i++) { const a = (i / n) * Math.PI * 2 + 0.4; tree(p, Math.cos(a) * 5.6, cz + Math.sin(a) * 5.6, 0.8 + r() * 0.3, Math.floor(r() * 1e6), KERB); } - if (!park && hasReal("street")) for (const x of [-4.5, 4.5]) furniture(p, "bench", x, KERB, cz + 3.6); + if (!park) for (const x of [-4.5, 4.5]) furniture(p, "bench", x, KERB, cz + 3.6); info.height = 6; } if (s.damage >= 1) info.emitters.push({ pos: new THREE.Vector3(0, info.height * 0.6, cz), kind: "smoke", rate: s.damage >= 2 ? 6 : 2 }); @@ -1213,22 +721,21 @@ export function building(s: Spec): { group: THREE.Group; info: ModelInfo } { const g = new THREE.Group(); const p = new Parts(); const r = rng(s.seed * 31 + 5); - const info: ModelInfo = { height: s.height, emitters: [], beacons: [], night: [], debris: realDef(s)?.debris ?? WALLS[s.wall] }; - const look = looks(s, info); + const def = realDef(s); + if (!def) throw new Error(`no model for a ${s.kind} (${s.style})`); + const info: ModelInfo = { height: s.height, emitters: [], beacons: [], night: [], debris: def.debris }; const broken = s.damage >= 2; - const def = realDef(s); const yp = new Parts(YARD); - if (def) realYard(yp, p, s, def, r); - else yard(yp, s, r); + realYard(yp, p, s, def, r); yp.into(g); // Heavy damage takes the top quarter off, roof and all. const floors = broken ? Math.max(1, Math.round(s.floors * (0.72 + r() * 0.1))) : s.floors; - const top = def ? stackReal(p, s, def, floors, !broken, info) : stack(p, s, look, floors, !broken); + const top = stackReal(p, s, def, floors, !broken, info); if (top.anchors.smoke) info.emitters.push({ pos: top.anchors.smoke, kind: "smoke", rate: s.damage ? 0 : s.style === "factory" || s.style === "powerstation" ? 1.4 : 0.25 }); if (top.anchors.beacon) info.beacons.push(top.anchors.beacon); - if (broken) wreckTop(p, top.w, top.d, top.top, def?.debris ?? (s.kind === "office" ? GLASS[s.wall] : WALLS[s.wall]), r, def ? THREE.MathUtils.clamp(top.top / 20, 0.4, 1) : 1); + if (broken) wreckTop(p, top.w, top.d, top.top, def.debris, r, THREE.MathUtils.clamp(top.top / 20, 0.4, 1)); if (s.shiny && !broken) finial(p, top.top); if (s.damage >= 1) { @@ -1270,7 +777,7 @@ function shell(s: Spec, def: RealDef): { group: THREE.Group; info: ModelInfo } { const floors = s.floors > 1 ? Math.max(1, Math.round(s.floors * (0.5 + r() * 0.12))) : 1; const top = stackReal(p, burnt, def, floors, false, info); info.height = top.top; - if (hasReal("civic")) { + { // The broken top: ragged stumps of wall along each edge (masonry) or // charred joists and rafters standing out of it (timber and glass). const paint: Paint = { wall: s.wall, accent: s.accent, roof: 0, signs: 0 }; @@ -1299,10 +806,10 @@ function shell(s: Spec, def: RealDef): { group: THREE.Group; info: ModelInfo } { civic(p, "rubble_beam", wx + (r() - 0.5) * ww * 0.7, y + 0.2 * k, wz + (r() - 0.5) * wd * 0.7, { ry: r() * Math.PI * 2, rx: (r() - 0.5) * 1.2, rz: (r() - 0.5) * 1.2, scale: new THREE.Vector3(k, k, k), damage: 2 }); } for (let i = 0; i < 2; i++) civic(p, "rubble_slab", wx + (r() - 0.5) * ww * 0.5, y + 0.1, wz + (r() - 0.5) * wd * 0.5, { ry: r() * Math.PI * 2, rx: (r() - 0.5) * 0.8, damage: 1 }); - } else wreckTop(p, top.w, top.d, top.top, def.debris, r, THREE.MathUtils.clamp(top.top / 14, 0.5, 1.1)); + } // Scorch round the walls, and what fell from above heaped against them. p.add(mat(0x1a1714, { transparent: true, opacity: 0.7, depthWrite: false }), new THREE.CircleGeometry(Math.max(s.w, s.d) * 0.75, 16), 0, KERB + 0.02, 0, -Math.PI / 2); - if (hasReal("civic")) { + { const paint: Paint = { wall: s.wall, accent: s.accent, roof: 0, signs: 0 }; const pile = 0.9 + s.grade * 0.4; const sides: [number, number, number][] = [ @@ -1336,7 +843,7 @@ export function rubble(s: Spec): { group: THREE.Group; info: ModelInfo } { const r = rng(s.seed * 7 + 1); const pile = 1.4 + s.grade * 0.9; p.box(mat(0x4a4642), LOT - 0.4, KERB + 0.04, LOT - 0.4, 0, 0, -s.yard); - if (hasReal("civic")) { + { // A heap of broken masonry (civic.py) with what is left standing or // thrown about on it: wall stumps in the building's brick, broken // slabs with their rebar out, bent beams; more of each for bigger buildings. @@ -1359,27 +866,6 @@ export function rubble(s: Spec): { group: THREE.Group; info: ModelInfo } { const d = r() * 0.7; civic(p, "rubble_beam", Math.cos(a) * R * d, on(d) + 0.2, Math.sin(a) * R * d, { ry: r() * Math.PI * 2, rx: (r() - 0.5) * 0.5, damage: 2 }); } - p.into(g); - g.position.set(s.x, 0, s.z); - g.rotation.y = s.rot; - const info: ModelInfo = { height: pile, emitters: [{ pos: new THREE.Vector3(0, pile * 0.6, 0), kind: "smoke", rate: 0.8 }], beacons: [], night: [], debris: WALLS[s.wall] }; - return { group: g, info }; - } - p.add(mat(0x5d5852, { flatShading: true, roughness: 1 }), new THREE.ConeGeometry(s.w * 0.62, pile, 9, 1), 0, pile / 2, 0, 0, r(), 0); - const conc = mat(0x7a7570, { roughness: 1, flatShading: true }); - const wall = mat(new THREE.Color(WALLS[s.wall]).multiplyScalar(0.55).getHex(), { flatShading: true }); - const burnt = mat(0x221e1c, { roughness: 1 }); - for (let i = 0; i < 26 + s.grade * 8; i++) { - const a = r() * Math.PI * 2; - const dist = r() * s.w * 0.6; - const sz = 0.4 + r() * (1 + s.grade * 0.4); - const y = Math.max(0, pile * (1 - dist / (s.w * 0.62)) - sz * 0.6); - const m = [conc, conc, wall, burnt][Math.floor(r() * 4)]; - p.box(m, sz, sz * (0.3 + r() * 0.6), sz * (0.5 + r() * 0.8), Math.cos(a) * dist, y, Math.sin(a) * dist, r() * 3, r(), r()); - } - const steel = mat(0x2a2422, { metalness: 0.5, roughness: 0.6 }); - for (let i = 0; i < 4 + s.grade * 2; i++) { - p.box(steel, 0.15, 2 + r() * 4, 0.15, (r() - 0.5) * s.w, 0, (r() - 0.5) * s.d, r() * 3, (r() - 0.5) * 1.8, (r() - 0.5) * 1.8); } p.into(g); g.position.set(s.x, 0, s.z); @@ -1388,6 +874,13 @@ export function rubble(s: Spec): { group: THREE.Group; info: ModelInfo } { return { group: g, info }; } +/** Points on the crane's pieces (civic.py), piece-local: the tie apex, beacons, the counter-jib's end. */ +const CRANE: Record> = { + crane_slew: { apex: new THREE.Vector3(0, 5.2, 0), beacon: new THREE.Vector3(0, 5.75, 0) }, + crane_jib_tip: { beacon: new THREE.Vector3(-1.2, 0.75, 0) }, + crane_counter: { end: new THREE.Vector3(9.3, 0.05, 0) }, +}; + /** Construction site: built floors, scaffolding, a blueprint of the goal and a tower crane. */ export function site(s: SiteSpec): { group: THREE.Group; info: ModelInfo; jib: THREE.Group; ghost: THREE.Mesh } { const g = new THREE.Group(); @@ -1409,18 +902,14 @@ export function site(s: SiteSpec): { group: THREE.Group; info: ModelInfo; jib: T // Lower floors already finished: the real building, rising floor by floor. const clad = Math.max(0, built - 2); const def = realDef(s); - if (clad > 0) { - if (def) stackReal(p, s, def, clad, false, info); - else stack(p, s, looks(s, info), clad, false); - } + if (clad > 0 && def) stackReal(p, s, def, clad, false, info); // Scaffolding one floor above the work. - const scaff = mat(s.surrendering ? 0xc0392b : 0xd08a2a, { metalness: 0.4, roughness: 0.5 }); const sh = builtH + s.floorH; const gap = 0.8; const W = s.w + gap * 2; const D = s.d + gap * 2; - if (hasReal("civic")) { + { // Tube-and-fitting bays (civic.py), 2.4 m stretched to fit each face, // one lift a storey; red tubes while the site is being surrendered. const red = s.surrendering ? mat(0xc0392b, { metalness: 0.4, roughness: 0.5 }) : undefined; @@ -1435,22 +924,6 @@ export function site(s: SiteSpec): { group: THREE.Group; info: ModelInfo; jib: T for (let y = 0; y < sh - 0.01; y += s.floorH) civic(p, "scaffold", ox + dx * t, y, oz + dz * t, { ry, scale, swap }); } } - } else for (const [len, axis] of [[W, "x"], [D, "z"]] as const) { - const n = Math.max(2, Math.round(len / 2.4)); - for (let i = 0; i <= n; i++) { - const t = -len / 2 + (len * i) / n; - for (const side of [-1, 1]) { - const [x, z] = axis === "x" ? [t, (side * D) / 2] : [(side * W) / 2, t]; - p.box(scaff, 0.09, sh, 0.09, x, 0, z); - } - } - } - if (!hasReal("civic")) for (let y = s.floorH; y <= sh + 0.01; y += s.floorH) { - for (const side of [-1, 1]) { - p.box(scaff, W, 0.08, 0.08, 0, y, (side * D) / 2); - p.box(scaff, 0.08, 0.08, D, (side * W) / 2, y, 0); - p.box(mat(0x8a6a40), W, 0.06, 0.6, 0, y - 0.05, side * (D / 2 - 0.3)); - } } p.into(g); @@ -1464,14 +937,11 @@ export function site(s: SiteSpec): { group: THREE.Group; info: ModelInfo; jib: T ghost.add(edges); g.add(ghost); - // Tower crane from the kit: base and mast sections, then a jib that turns + // Tower crane (civic.py): base and mast sections, then a jib that turns // with its cab, counter-jib, pendant ties, trolley, hook and a load of steel. - // The anchors (apex, beacons, the counter-jib's end) are the kit's; the - // realistic crane (civic.py) is built to the same sizes. const crane = (p: Parts, name: string, x: number, y: number, z: number) => { - if (hasReal("civic")) civic(p, name, x, y, z); - else for (const { role, geo } of piece(name).parts) p.add(kitMat(ROLES[role] ?? ROLES.metal, 0), geo, x, y, z); - return piece(name).anchors; + civic(p, name, x, y, z); + return CRANE[name] ?? {}; }; const cp = new Parts(); const mx = s.w / 2 + 2.8; @@ -1520,24 +990,16 @@ export function site(s: SiteSpec): { group: THREE.Group; info: ModelInfo; jib: T // ---- parks -------------------------------------------------------------------- -const PARK_ROLES: Record = { ...ROLES, roof: { color: 0x56606e, rough: 0.8 }, accent: { color: 0x3a6fb5, rough: 0.7 } }; - function prop(p: Parts, name: string, x: number, z: number, ry = 0, s = 1, y = KERB) { const scale = new THREE.Vector3(s, s, s); - if (name === "bench" && hasReal("street")) return furniture(p, "bench", x, y, z, ry); + if (name === "bench") return furniture(p, "bench", x, y, z, ry); // A fountain's water moves: calm small ripples, rings from where it lands, streaks down the jet and streams. const water = (role: string) => (role === "water" ? waterMat({ amp: 0.5, scale: 2.5, ring: [x, z] }) : undefined); - if (hasReal("civic")) return civic(p, name, x, y, z, { ry, scale, swap: water }); - for (const { role, geo } of piece(name).parts) p.add(role === "water" ? waterMat({ amp: 0.5, scale: 2.5, ring: [x, z] }) : kitMat(PARK_ROLES[role] ?? ROLES.metal, 0), geo, x, y, z, 0, ry, 0, scale); + civic(p, name, x, y, z, { ry, scale, swap: water }); } -/** A park lamp: a post with a lantern, lit by `bulb` at night. */ -export function lampPost(p: Parts, pole: THREE.Material, bulb: THREE.Material, x: number, z: number, h = 3.6) { - if (hasReal("street")) return furniture(p, "lamp_heritage", x, KERB, z); - p.cyl(pole, 0.07, 0.1, h, x, KERB, z, 6); - p.box(bulb, 0.36, 0.5, 0.36, x, KERB + h, z); - p.box(pole, 0.5, 0.08, 0.5, x, KERB + h + 0.5, z); -} +/** A park lamp, lit at night. */ +const lampPost = (p: Parts, x: number, z: number) => furniture(p, "lamp_heritage", x, KERB, z); /** * A park block in place of a district, in world coordinates: a plaza with a @@ -1548,18 +1010,17 @@ export function park(p: Parts, k: ParkSpec, pole: THREE.Material, bulb: THREE.Ma const { x: X, z: Z } = k; const W = BLOCK_X; const D = BLOCK_Z; - const lawn_ = hasReal("trees") ? lawn() : mat(0x6a9a48, { roughness: 1 }); - const real = hasReal("street"); - const paving = real ? groundMat("pave", 3.6, { roughness: 0.88, color: 0xf2eee6 }) : mat(0xc4bcae, { roughness: 0.9 }); + const lawn_ = lawn(); + const paving = groundMat("pave", 3.6, { roughness: 0.88, color: 0xf2eee6 }); const flat = (m: THREE.Material, g: THREE.BufferGeometry, x: number, z: number, y = KERB + 0.02) => p.add(m, g, X + x, y, Z + z, -Math.PI / 2); const bench = (x: number, z: number, ry: number) => prop(p, "bench", X + x, Z + z, ry); switch (k.kind) { case "plaza": { p.box(paving, W, KERB, D, X, 0, Z); - flat(real ? groundMat("ashlar", 2.4, { roughness: 0.85, color: 0xd4c8b4 }) : mat(0x9a8e7e, { roughness: 0.9 }), new THREE.CircleGeometry(10, 48), 0, 0); - flat(real ? groundMat("ashlar", 2.4, { roughness: 0.8, color: 0xf0ebe0 }) : mat(0xd8d0c0, { roughness: 0.9 }), new THREE.RingGeometry(10, 10.8, 48), 0, 0, KERB + 0.03); + flat(groundMat("ashlar", 2.4, { roughness: 0.85, color: 0xd4c8b4 }), new THREE.CircleGeometry(10, 48), 0, 0); + flat(groundMat("ashlar", 2.4, { roughness: 0.8, color: 0xf0ebe0 }), new THREE.RingGeometry(10, 10.8, 48), 0, 0, KERB + 0.03); prop(p, "fountain", X, Z, 0, 1.45); - if (hasReal("civic")) p.extra(fountainSpray(X, KERB, Z, 1.45)); + p.extra(fountainSpray(X, KERB, Z, 1.45)); for (let i = 0; i < 8; i++) { const a = (i / 8) * Math.PI * 2 + Math.PI / 8; // Benches face the fountain (a bench's front is +z before turning). @@ -1570,13 +1031,13 @@ export function park(p: Parts, k: ParkSpec, pole: THREE.Material, bulb: THREE.Ma p.box(lawn_, 12, KERB + 0.12, 9, X + x, 0, Z + z); for (let i = 0; i < 5; i++) tree(p, X + x + (r() - 0.5) * 9, Z + z + (r() - 0.5) * 6, 0.35 + r() * 0.2, k.seed + 40 + i + x, KERB + 0.1); } - for (const [x, z] of [[-14, -6], [14, -6], [-14, 6], [14, 6]]) lampPost(p, pole, bulb, X + x, Z + z); + for (const [x, z] of [[-14, -6], [14, -6], [-14, 6], [14, 6]]) lampPost(p, X + x, Z + z); break; } case "park": { p.box(lawn_, W, KERB, D, X, 0, Z); // A loop path round the lawn, with a cut through the middle. - const path = real ? gravelMat(0xe0d0a8) : mat(0xc9b896, { roughness: 1 }); + const path = gravelMat(0xe0d0a8); const ax = W / 2 - 6; const az = D / 2 - 4.5; const n = 36; @@ -1584,14 +1045,14 @@ export function park(p: Parts, k: ParkSpec, pole: THREE.Material, bulb: THREE.Ma ring.forEach(([x0, z0], i) => { const [x1, z1] = ring[(i + 1) % n]; p.box(path, Math.hypot(x1 - x0, z1 - z0) + 0.6, KERB + 0.03, 2.2, X + (x0 + x1) / 2, 0, Z + (z0 + z1) / 2, -Math.atan2(z1 - z0, x1 - x0)); - if (i % 6 === 3) lampPost(p, pole, bulb, X + x0 * 1.09, Z + z0 * 1.14); + if (i % 6 === 3) lampPost(p, X + x0 * 1.09, Z + z0 * 1.14); if (i % 6 === 0) bench(x0 * 0.9, z0 * 0.86, Math.atan2(x0, z0)); }); p.box(path, 2.2, KERB + 0.03, D, X + 4, 0, Z); // A pond with a sandy edge, and the bandstand across the lawn. const pond = { x: -12, z: 1, rx: 10, rz: 5.5 }; const sand = new THREE.CircleGeometry(1, 28).scale(pond.rx + 0.9, pond.rz + 0.9, 1); - flat(real ? gravelMat(0xd8c490) : mat(0xb8a87c, { roughness: 1 }), sand, pond.x, pond.z, KERB + 0.025); + flat(gravelMat(0xd8c490), sand, pond.x, pond.z, KERB + 0.025); flat(waterMat({ amp: 0.9, scale: 1.7, color: 0x1d3c3a }), new THREE.CircleGeometry(1, 28).scale(pond.rx, pond.rz, 1), pond.x, pond.z, KERB + 0.04); prop(p, "bandstand", X + 16, Z - 1); // Trees wherever the paths, the pond and the bandstand leave room. @@ -1612,9 +1073,9 @@ export function park(p: Parts, k: ParkSpec, pole: THREE.Material, bulb: THREE.Ma const pz = -3; const [pw, pd] = [46, 22]; // A rubber-crumb surround and a mown pitch: light and dark bands of one turf. - p.box(real ? gravelMat(0xff8a68, 1.6) : mat(0xa85a40, { roughness: 1 }), pw + 6, KERB + 0.02, pd + 5, X, 0, Z + pz); + p.box(gravelMat(0xff8a68, 1.6), pw + 6, KERB + 0.02, pd + 5, X, 0, Z + pz); for (let i = 0; i < 10; i++) { - const turf = real ? groundMat("grass", 1.8, { roughness: 0.95, normal: 0.6, color: i % 2 ? 0xa8c888 : 0xc4dca0 }) : mat(i % 2 ? 0x5e9a3e : 0x6aa646, { roughness: 1 }); + const turf = groundMat("grass", 1.8, { roughness: 0.95, normal: 0.6, color: i % 2 ? 0xa8c888 : 0xc4dca0 }); p.box(turf, pw / 10, KERB + 0.04, pd, X - pw / 2 + (i + 0.5) * (pw / 10), 0, Z + pz); } const white = mat(0xf2f2ea, { roughness: 0.7 }); diff --git a/ui/src/city/plan.test.ts b/ui/src/city/plan.test.ts index 3b605e5..0f15210 100644 --- a/ui/src/city/plan.test.ts +++ b/ui/src/city/plan.test.ts @@ -218,3 +218,18 @@ test("the City's power and water get their own models; the public buildings have expect(p.buildings[0].model).toBe("p2"); expect(p.buildings[0].style).toBe("powerstation"); }); + +test("every look the plan can give a building has a model", async () => { + // real.ts reads the page's URL at load; bun has none. + (globalThis as unknown as { location: object }).location ??= { search: "" }; + const { DEFS } = await import("./real"); + const { DESIGNS, NEED_LOOKS } = await import("./plan"); + const drawn = (kind: string, style: string) => Object.values(DEFS).some((d) => d.kind === kind && d.style === style); + const built = new Set(["water", "square", "park"]); + for (const kind of KINDS) for (const [style] of STYLES[kind]) expect(drawn(kind, style), `${kind} ${style}`).toBe(true); + for (const [id, look] of Object.entries(DESIGNS)) expect(DEFS[id]?.style, id).toBe(look.style); + for (const look of [...Object.values(PUBLIC), ...Object.values(NEED_LOOKS)]) { + if (built.has(look.style)) continue; + expect(look.model && DEFS[look.model]?.style, look.style).toBe(look.style); + } +}); diff --git a/ui/src/city/plan.ts b/ui/src/city/plan.ts index d7c52e1..9fdab72 100644 --- a/ui/src/city/plan.ts +++ b/ui/src/city/plan.ts @@ -21,20 +21,21 @@ export type Kind = "cottage" | "shop" | "apartment" | "office" | "landmark"; export const KINDS: Kind[] = ["cottage", "shop", "apartment", "office", "landmark"]; /** - * Building types per kind, from the seed. "classic" is the original kit - * (several variants each); the rest are the skyline styles. + * Building types per kind, from the seed, for a lot with no blueprint (the + * plan gives every designed lot one). Each is drawn by a model in DEFS + * (real.ts); plan.test.ts checks that. */ export const STYLES: Record = { cottage: [["classic", 0.55], ["modern", 0.25], ["aframe", 0.2]], shop: [["classic", 0.5], ["diner", 0.25], ["factory", 0.25]], apartment: [["classic", 0.6], ["townhouse", 0.4]], - office: [["classic", 0.6], ["round", 0.4]], - landmark: [["deco", 0.25], ["glass", 0.25], ["twist", 0.25], ["tvtower", 0.25]], + office: [["classic", 1]], + landmark: [["deco", 1]], }; /** - * What a blueprint is drawn as: the kit style its realistic model replaces - * (DEFS in real.ts), and the model itself. Kept here so the plan stays pure. + * What a blueprint is drawn as: its model's kind and style (DEFS in + * real.ts), and the model itself. Kept here so the plan stays pure. */ export const DESIGNS: Record = { c1: { kind: "cottage", style: "classic" }, @@ -53,9 +54,8 @@ export const DESIGNS: Record = { }; /** - * Buildings the town provides have no models yet: stand-ins until they do - * (docs/GAME.md). `water`, `square` and `park` are - * drawn by models.ts itself. + * How the town's buildings (docs/GAME.md) are drawn: by their model, or, + * for `water`, `square` and `park`, laid out by models.ts itself. */ export const PUBLIC: Record = { water: { kind: "shop", style: "water" }, diff --git a/ui/src/city/real.ts b/ui/src/city/real.ts index a194027..a458451 100644 --- a/ui/src/city/real.ts +++ b/ui/src/city/real.ts @@ -1,9 +1,8 @@ -// City theme: the realistic models (ui/blender/real, docs/APP.md), which -// replace the low-poly kit's styles one model at a time. `bun run models` -// writes public/models/: .glb (pieces as nodes, materials named by -// role), _ao.png (AO baked on the lightmap UVs) and tex/, the shared -// texture library. Any model that is missing falls back to the kit. Release -// builds download them instead (models.ts), so the base is set at startup. +// City theme: the models (ui/blender/real, docs/APP.md), the only thing the +// city is drawn with. `bun run models` writes public/models/: .glb +// (pieces as nodes, materials named by role), _ao.png (AO baked on the +// lightmap UVs) and tex/, the shared texture library. Release builds +// download them instead (models.ts), so the base is set at startup. // // This module loads the models and owns their materials: PBR from the // library with baked AO and world-space weathering, and window glass that @@ -41,7 +40,7 @@ const loaded = new Map(); /** How a model sits in the city: its size, how it stacks, where its chimney smokes. */ export interface RealDef { id: string; - /** The kit kind and style it takes over (docs/APP.md). */ + /** The plan's kind and style it draws (STYLES, DESIGNS in plan.ts). */ kind: Kind; style: string; /** Footprint (x, z) in metres, eaves, porch and steps included; front faces +z. */ @@ -561,7 +560,7 @@ export const DEFS: Record = { floors: (plan) => Math.max(12, plan), stack(floors, roof, _r, total) { // Three tiers, stepping back at about half and four fifths of the - // finished height (as the kit's deco tower does), a ledge piece where + // finished height, a ledge piece where // each tier ends; the crown on top. const n = Math.max(total, floors); const e1 = Math.round(n * 0.5); @@ -584,11 +583,7 @@ export const DEFS: Record = { }, }; -/** - * Models that are not buildings: the props the city is dressed with - * (vehicles, ...), each one glb of named pieces. Missing ones fall back to - * the kit's props. - */ +/** Models that are not buildings: the props the city is dressed with (vehicles, ...), each one glb of named pieces. */ export const PROPS = ["cars", "trees", "street", "bridge", "civic"]; // ---- compressed textures ------------------------------------------------------------ @@ -651,11 +646,15 @@ async function loadGlb(url: string): Promise { /** A texture to load: BC7 if it is listed (and this GPU has it), else the PNG. */ const isBc7 = (url: string) => packed.has(url.slice(BASE.length, -4)); -/** Loads every model there is; missing ones are left to the kit. Never throws. `renderer` lets textures load compressed. */ -export async function loadReal(ids = [...Object.keys(DEFS), ...PROPS], renderer?: THREE.WebGLRenderer): Promise { +/** + * Loads the models, all of them or throws: the city draws nothing else. + * `lenient` (the viewers) skips missing ones instead. `renderer` lets textures load compressed. + */ +export async function loadReal(ids = [...Object.keys(DEFS), ...PROPS], renderer?: THREE.WebGLRenderer, lenient = false): Promise { await initBc7(renderer); - // Without BC7 the pack has nothing to draw with: the kit it is. - if (!hasPng && packed.size === 0) return; + // The pack ships BC7 textures only. + if (!hasPng && packed.size === 0) throw new Error("the city's textures need BC7 compression, which this GPU lacks"); + const missing: string[] = []; const png = new THREE.TextureLoader(); const tex = { loadAsync: async (url: string): Promise => { @@ -697,11 +696,13 @@ export async function loadReal(ids = [...Object.keys(DEFS), ...PROPS], renderer? } if (id === "trees") for (const parts of pieces.values()) bendLeaves(parts); loaded.set(id, { pieces, ao }); - } catch { - // Not built (bun run models) or not downloaded yet: the kit draws this style. + } catch (e) { + console.warn("model", id, e); + missing.push(id); } }), ); + if (missing.length && !lenient) throw new Error(`models missing: ${missing.join(", ")}`); } export const hasReal = (id: string) => loaded.has(id); @@ -1393,7 +1394,7 @@ export function waterMat(o: { amp?: number; scale?: number; ring?: [number, numb /** * A fountain's spray, drawn by the GPU alone (no per-frame work): the jet * from the top falls back into the upper basin, and eight streams arc from - * the upper basin's rim into the lower one, as the kit fountain shows them. + * the upper basin's rim into the lower one. * `x, y, z` is the fountain's foot, `s` its scale. */ /** The spray's brightness, dimmed at night by setSignals. */ diff --git a/ui/src/city/scene.ts b/ui/src/city/scene.ts index 188c530..4d12dc9 100644 --- a/ui/src/city/scene.ts +++ b/ui/src/city/scene.ts @@ -19,15 +19,13 @@ import { shadowTaps, type ShadowTaps } from "./shadow"; import { onQuality, QUALITY, qualityPref, type QualitySpec } from "./quality"; import { Fx } from "./fx"; import { IMPOSTOR_NEAR, Impostors, loaded } from "./impostor"; -import { loadKit } from "./kit"; import { thumbnail } from "./thumbs"; -import { groundMat, hasReal, interiorUniforms, LEAF_OPT, leafDepth, loadReal, realMat, realPiece, setRealEnv, setSignals, setSprayScale, setWaterTime, useModels } from "./real"; +import { groundMat, interiorUniforms, LEAF_OPT, leafDepth, loadReal, realMat, realPiece, setRealEnv, setSignals, setSprayScale, setWaterTime, useModels } from "./real"; import { modelsStatus, type ModelsStatus } from "../models"; import { Traffic } from "./traffic"; import { Land } from "./land"; -import { piece } from "./kit"; import { RADIUS, ROAD_Z, WATER } from "./terrain"; -import { building, fitReal, furniture, KERB, kitLook, mat, park, Parts, rubble, site, SPECIES, tree, type ModelInfo } from "./models"; +import { building, fitReal, furniture, KERB, mat, park, Parts, rubble, site, SPECIES, tree, type ModelInfo } from "./models"; import { BLOCK_X, BLOCK_Z, LOT, lot, PAVEMENT, PITCH_X, PITCH_Z, ROAD, plan, rng, type CityPlan, type SiteSpec, type Spec } from "./plan"; const SEEN_KEY = "deepwork.seen"; @@ -373,8 +371,9 @@ export class City { // The renderer first: it picks the format compressed textures transcode to (real.ts). const city = new City(el, story); const models = (city.models = await modelsStatus()); - if (models.state === "ready") useModels(models.base, models.png ?? false); - await Promise.all([loadKit(), models.state === "ready" ? loadReal(undefined, city.renderer) : null]); + if (models.state !== "ready") throw new Error("the city's models are not downloaded yet"); + useModels(models.base, models.png ?? false); + await loadReal(undefined, city.renderer); return city; } @@ -746,12 +745,12 @@ export class City { }; // trees: past IMPOSTOR_NEAR a tile's trees are drawn as impostors // (impostor.ts); the real ones still draw the shadow map, and come back up close. - const impostors = hasReal("trees") ? this.impostors : null; - type Tile = { real: Parts; imp: Parts | null; centre: THREE.Vector3 }; + const impostors = this.impostors; + type Tile = { real: Parts; imp: Parts; centre: THREE.Vector3 }; const tiles = new Map(); const tile = (key: string, x: number, z: number) => { let t = tiles.get(key); - if (!t) tiles.set(key, (t = { real: new Parts(), imp: impostors && new Parts(), centre: new THREE.Vector3(x, 0, z) })); + if (!t) tiles.set(key, (t = { real: new Parts(), imp: new Parts(), centre: new THREE.Vector3(x, 0, z) })); return t; }; const gridTile = (x: number, z: number) => { @@ -762,17 +761,15 @@ export class City { /** A tree as tree() places it, plus its impostor. */ const treeAt = (t: Tile, x: number, z: number, s: number, seed: number, y: number) => { tree(t.real, x, z, s, seed, y); - if (t.imp) impostors!.tree(t.imp, x, z, s, seed, y, SPECIES); + impostors.tree(t.imp, x, z, s, seed, y, SPECIES); }; // Parks, empty lots and the bridge: always drawn. const parts = chunk("all", 0, 0); - // With the realistic street furniture come textured streets: asphalt, - // paving slabs, granite kerbs, drains and manhole covers. - const real = hasReal("street"); - const asphalt = real ? groundMat("asphalt", 6, { roughness: 0.93, color: 0xb4b4b4 }) : mat(0x3a3c40, { roughness: 0.95 }); - const walk = real ? groundMat("pave", 3.6, { roughness: 0.88 }) : mat(0xa8a49c, { roughness: 0.9 }); + // Textured streets: asphalt, paving slabs, granite kerbs, drains and manhole covers. + const asphalt = groundMat("asphalt", 6, { roughness: 0.93, color: 0xb4b4b4 }); + const walk = groundMat("pave", 3.6, { roughness: 0.88 }); const kerbStone = mat(0xb6b2aa, { roughness: 0.8 }); - const pool = real ? lightPool() : null; + const pool = lightPool(); const iron = mat(0x2a2b2d, { roughness: 0.55, metalness: 0.5 }); const line = mat(0xe8e0c0, { roughness: 0.6 }); const pole = mat(0x3c4046, { metalness: 0.6, roughness: 0.4 }); @@ -789,17 +786,15 @@ export class City { // Pavement: a raised ring round the block, kerb on the road side. for (const sz of [-1, 1]) surf.box(walk, BLOCK_X + 2 * pw, KERB, pw, b.x, 0, b.z + sz * (BLOCK_Z / 2 + pw / 2)); for (const sx of [-1, 1]) surf.box(walk, pw, KERB, BLOCK_Z, b.x + sx * (BLOCK_X / 2 + pw / 2), 0, b.z); - if (real) { - // Granite kerbs on the road side, a drain grate by each kerb, and - // manhole covers in the carriageway. - const kx = BLOCK_X / 2 + pw - 0.09; - const kz = BLOCK_Z / 2 + pw - 0.09; - for (const sz of [-1, 1]) surf.box(kerbStone, BLOCK_X + 2 * pw, KERB + 0.004, 0.18, b.x, 0, b.z + sz * kz); - for (const sx of [-1, 1]) surf.box(kerbStone, 0.18, KERB + 0.004, BLOCK_Z + 2 * pw - 0.36, b.x + sx * kx, 0, b.z); - for (const sz of [-1, 1]) for (const t of [-0.6, 0.6]) surf.box(iron, 0.6, 0.065, 0.36, b.x + t * BLOCK_X / 2, 0, b.z + sz * (kz + 0.3)); - for (const sx of [-1, 1]) surf.box(iron, 0.36, 0.065, 0.6, b.x + sx * (kx + 0.3), 0, b.z + 4); - for (const t of [-0.35, 0.35]) surf.add(iron, new THREE.CircleGeometry(0.33, 14), b.x + t * BLOCK_X, 0.066, b.z - PITCH_Z / 2 + 1.6, -Math.PI / 2); - } + // Granite kerbs on the road side, a drain grate by each kerb, and + // manhole covers in the carriageway. + const kx = BLOCK_X / 2 + pw - 0.09; + const kz = BLOCK_Z / 2 + pw - 0.09; + for (const sz of [-1, 1]) surf.box(kerbStone, BLOCK_X + 2 * pw, KERB + 0.004, 0.18, b.x, 0, b.z + sz * kz); + for (const sx of [-1, 1]) surf.box(kerbStone, 0.18, KERB + 0.004, BLOCK_Z + 2 * pw - 0.36, b.x + sx * kx, 0, b.z); + for (const sz of [-1, 1]) for (const t of [-0.6, 0.6]) surf.box(iron, 0.6, 0.065, 0.36, b.x + t * BLOCK_X / 2, 0, b.z + sz * (kz + 0.3)); + for (const sx of [-1, 1]) surf.box(iron, 0.36, 0.065, 0.6, b.x + sx * (kx + 0.3), 0, b.z + 4); + for (const t of [-0.35, 0.35]) surf.add(iron, new THREE.CircleGeometry(0.33, 14), b.x + t * BLOCK_X, 0.066, b.z - PITCH_Z / 2 + 1.6, -Math.PI / 2); // Dashed centre lines on the roads around the block. for (let x = -PITCH_X / 2; x < PITCH_X / 2; x += 5) { surf.box(line, 2.4, 0.07, 0.25, b.x + x + 1.2, 0, b.z - PITCH_Z / 2); @@ -822,25 +817,19 @@ export class City { for (const t of [-1, -1 / 3, 1 / 3, 1]) { const x = b.x + t * (BLOCK_X / 2 - 1); const z = b.z + lz * ez; - if (real) { - // The arm reaches out over the road; at night its light pools - // on the road and pavement below (lit faces point down, so from - // the usual overhead view the pool is what shows). The pool - // stays when the lamp drops out with distance. - furniture(props, "lamp_led", x, KERB, z, lz > 0 ? 0 : Math.PI); - surf.add(pool!, new THREE.PlaneGeometry(11, 11), x, 0.08, z + lz * 1.8, -Math.PI / 2); - continue; - } - props.cyl(pole, 0.08, 0.12, 5, x, KERB, z, 6); - props.box(pole, 0.2, 0.15, 1.4, x, KERB + 4.9, z + lz * 0.6); - props.box(bulb, 0.5, 0.18, 0.5, x, KERB + 4.75, z + lz * 1.1); + // The arm reaches out over the road; at night its light pools + // on the road and pavement below (lit faces point down, so from + // the usual overhead view the pool is what shows). The pool + // stays when the lamp drops out with distance. + furniture(props, "lamp_led", x, KERB, z, lz > 0 ? 0 : Math.PI); + surf.add(pool, new THREE.PlaneGeometry(11, 11), x, 0.08, z + lz * 1.8, -Math.PI / 2); } for (const t of [-5 / 6, -1 / 2, -1 / 6, 1 / 6, 1 / 2, 5 / 6]) { treeAt(trees, b.x + t * (BLOCK_X / 2 - 1), b.z + lz * ez, 0.5, Math.floor(b.x * 31 + b.z * 17 + t * 12 + lz * 5), KERB); } } for (const sx of [-1, 1]) treeAt(trees, b.x + sx * ex, b.z, 0.5, Math.floor(b.x * 13 + b.z * 7 + sx), KERB); - if (real) this.streetFurniture(tiny, b, p.tier); + this.streetFurniture(tiny, b, p.tier); } for (const k of p.parks) park(parts, k, pole, bulb); // Empty lots: rough grass with survey stakes, waiting to be built on. @@ -848,7 +837,7 @@ export class City { const tape = mat(0xff8a2a, { emissive: 0x401800 }); const e = LOT / 2 - 1.4; for (const l of p.emptyLots) { - parts.box(real && hasReal("trees") ? groundMat("grass", 2.2, { roughness: 1, color: 0xc4b080 }) : mat(0x7a8f55, { roughness: 1 }), LOT - 0.4, KERB + 0.06, LOT - 0.4, l.x, 0, l.z); + parts.box(groundMat("grass", 2.2, { roughness: 1, color: 0xc4b080 }), LOT - 0.4, KERB + 0.06, LOT - 0.4, l.x, 0, l.z); for (const [cx, cz] of [[-1, -1], [1, -1], [-1, 1], [1, 1]]) parts.box(stake, 0.15, 0.9, 0.15, l.x + cx * e, KERB, l.z + cz * e); for (const cz of [-1, 1]) parts.box(tape, 2 * e, 0.04, 0.04, l.x, KERB + 0.75, l.z + cz * e); for (const cx of [-1, 1]) parts.box(tape, 0.04, 0.04, 2 * e, l.x + cx * e, KERB + 0.75, l.z); @@ -889,39 +878,29 @@ export class City { const mesh = new THREE.Mesh(g, asphalt); mesh.receiveShadow = true; this.base.add(mesh); - if (real) { - // Lane markings over the hills: a dashed centre line, solid edge lines. - const mp: number[] = []; - const quad = (xa: number, xb: number, z0: number, z1: number) => { - const ya = ground.height(xa, ROAD_Z) + 0.07; - const yb = ground.height(xb, ROAD_Z) + 0.07; - mp.push(xa, ya, z0, xb, yb, z0, xb, yb, z1, xa, ya, z0, xb, yb, z1, xa, ya, z1); - }; - for (let x = x0; x + 3 < x1; x += 9) quad(x, x + 3, ROAD_Z - 0.07, ROAD_Z + 0.07); - for (let x = x0; x < x1; x += 4) { - const xb = Math.min(x1, x + 4); - for (const e of [-1, 1]) quad(x, xb, ROAD_Z + e * 4.05 - 0.07, ROAD_Z + e * 4.05 + 0.07); - } - const lg = new THREE.BufferGeometry(); - lg.setAttribute("position", new THREE.Float32BufferAttribute(mp, 3)); - // Wound to face up whatever the order above: draw both sides. - const marks = new THREE.Mesh(lg, mat(0xe8e4d8, { roughness: 0.7, side: THREE.DoubleSide })); - lg.computeVertexNormals(); - marks.receiveShadow = true; - this.base.add(marks); + // Lane markings over the hills: a dashed centre line, solid edge lines. + const mp: number[] = []; + const quad = (xa: number, xb: number, z0: number, z1: number) => { + const ya = ground.height(xa, ROAD_Z) + 0.07; + const yb = ground.height(xb, ROAD_Z) + 0.07; + mp.push(xa, ya, z0, xb, yb, z0, xb, yb, z1, xa, ya, z0, xb, yb, z1, xa, ya, z1); + }; + for (let x = x0; x + 3 < x1; x += 9) quad(x, x + 3, ROAD_Z - 0.07, ROAD_Z + 0.07); + for (let x = x0; x < x1; x += 4) { + const xb = Math.min(x1, x + 4); + for (const e of [-1, 1]) quad(x, xb, ROAD_Z + e * 4.05 - 0.07, ROAD_Z + e * 4.05 + 0.07); } + const lg = new THREE.BufferGeometry(); + lg.setAttribute("position", new THREE.Float32BufferAttribute(mp, 3)); + // Wound to face up whatever the order above: draw both sides. + const marks = new THREE.Mesh(lg, mat(0xe8e4d8, { roughness: 0.7, side: THREE.DoubleSide })); + lg.computeVertexNormals(); + marks.receiveShadow = true; + this.base.add(marks); }; ribbon(bx + 15, RADIUS - 1); ribbon(-RADIUS + 1, bx - 15); - if (hasReal("bridge")) { - for (const { role, geo } of realPiece("bridge", "bridge")) parts.add(realMat("bridge", role, { wall: 0, accent: 0, roof: 0, signs: 0 }, 0), geo, bx, 0, bz); - } else { - for (const { role, geo } of piece("bridge").parts) { - const m = kitLook(role); - if (m.userData.night && !this.lampMats.includes(m)) this.lampMats.push(m); - parts.add(m, geo, bx, 0, bz); - } - } + for (const { role, geo } of realPiece("bridge", "bridge")) parts.add(realMat("bridge", role, { wall: 0, accent: 0, roof: 0, signs: 0 }, 0), geo, bx, 0, bz); this.chunks = []; for (const c of chunks.values()) { const g = new THREE.Group(); diff --git a/ui/src/city/textures.ts b/ui/src/city/textures.ts deleted file mode 100644 index 92810b7..0000000 --- a/ui/src/city/textures.ts +++ /dev/null @@ -1,178 +0,0 @@ -// Window atlas drawn on canvases at startup. Every pane of the Blender kit -// maps to one cell of an ATLAS x ATLAS grid, and buildings shift cells per -// floor, so each window gets its own look: the colour map holds glass, -// curtains and blinds by day, the emissive map the lit rooms at night. -import * as THREE from "three"; -import { rng } from "./plan"; - -/** Cells per side; must match CELLS in city_kit.py. */ -export const ATLAS = 32; -const PX = 16; -const SIZE = ATLAS * PX; - -/** Residential sash windows, or office glazing. */ -export type Pane = "window" | "glass"; - -export interface PaneSet { - map: THREE.Texture; - emissive: THREE.Texture; - /** Smashed, scorched and partly burning. */ - brokenMap: THREE.Texture; - brokenEmissive: THREE.Texture; -} - -function canvas(): [HTMLCanvasElement, CanvasRenderingContext2D] { - const c = document.createElement("canvas"); - c.width = c.height = SIZE; - return [c, c.getContext("2d")!]; -} - -function texture(c: HTMLCanvasElement): THREE.Texture { - const t = new THREE.CanvasTexture(c); - t.wrapS = t.wrapT = THREE.RepeatWrapping; - t.colorSpace = THREE.SRGBColorSpace; - // glTF UVs run top-down. - t.flipY = false; - t.anisotropy = 4; - return t; -} - -const WARM = ["#ffd38a", "#ffc46b", "#ffe2b0", "#fff0d0", "#ffb35c", "#ffcf9a"]; -const COOL = ["#fff1d8", "#ffe6c0", "#f2f0ea", "#ffd9a8", "#e8eefc"]; -const CURTAINS = ["#e8e0cc", "#d9c7a8", "#b8483a", "#4a6a8a", "#c9b07a", "#f0ece4", "#7a8a5a"]; - -function draw(kind: Pane, seed: number, broken: boolean): [HTMLCanvasElement, HTMLCanvasElement] { - const r = rng(seed); - const [mc, m] = canvas(); - const [ec, e] = canvas(); - e.fillStyle = "#000"; - e.fillRect(0, 0, SIZE, SIZE); - for (let row = 0; row < ATLAS; row++) { - for (let col = 0; col < ATLAS; col++) { - const x = col * PX; - const y = row * PX; - const smashed = broken && r() < 0.55; - // Glass: dark, with a sky reflection that fades down the pane. - const base = kind === "glass" ? 150 + r() * 60 : 34 + r() * 26; - m.fillStyle = smashed ? "#0b0908" : kind === "glass" ? `rgb(${base},${base},${base})` : `rgb(${base * 0.75},${base * 0.9},${base + 22})`; - m.fillRect(x, y, PX, PX); - if (!smashed) { - const g = m.createLinearGradient(x, y, x + PX * 0.6, y + PX); - g.addColorStop(0, `rgba(255,255,255,${kind === "glass" ? 0.35 : 0.22})`); - g.addColorStop(0.55, "rgba(255,255,255,0)"); - g.addColorStop(1, "rgba(0,0,0,0.12)"); - m.fillStyle = g; - m.fillRect(x, y, PX, PX); - } - if (smashed) { - // Jagged shards and soot. - m.fillStyle = "rgba(90,90,96,0.6)"; - for (let i = 0; i < 3; i++) { - m.beginPath(); - const sx = x + r() * PX; - m.moveTo(sx, y); - m.lineTo(sx + (r() - 0.5) * 6, y + 3 + r() * 5); - m.lineTo(sx + 3, y); - m.fill(); - } - if (r() < 0.3) { - e.fillStyle = r() < 0.5 ? "#ff5a10" : "#ff8a20"; - e.fillRect(x, y + PX * (0.25 + r() * 0.3), PX, PX); - e.fillStyle = "#ffc040"; - e.fillRect(x + 3, y + PX * 0.7, PX - 6, PX * 0.3); - } - continue; - } - const lit = r() < (broken ? 0.12 : kind === "glass" ? 0.5 : 0.58); - if (kind === "window") { - // Curtains or blinds by day, muntins on top. - const dressing = r(); - const cur = CURTAINS[Math.floor(r() * CURTAINS.length)]; - if (dressing < 0.45) { - const w = PX * (0.18 + r() * 0.2); - m.fillStyle = cur; - m.fillRect(x, y, w, PX); - m.fillRect(x + PX - w, y, w, PX); - } else if (dressing < 0.65) { - m.fillStyle = "#ddd6c8"; - m.fillRect(x, y, PX, PX * (0.2 + r() * 0.6)); - m.fillStyle = "rgba(0,0,0,0.15)"; - for (let ly = y + 2; ly < y + PX; ly += 2) m.fillRect(x, ly, PX, 0.6); - } - if (lit) { - const warm = r() < 0.08 ? "#9ec4ff" : WARM[Math.floor(r() * WARM.length)]; - const g = e.createRadialGradient(x + PX / 2, y + PX * 0.35, 1, x + PX / 2, y + PX / 2, PX * 0.75); - g.addColorStop(0, warm); - g.addColorStop(1, "rgba(120,70,20,0.85)"); - e.fillStyle = g; - e.fillRect(x, y, PX, PX); - if (dressing < 0.45) { - e.fillStyle = "rgba(0,0,0,0.55)"; - const w = PX * (0.2 + r() * 0.15); - e.fillRect(x, y, w, PX); - e.fillRect(x + PX - w, y, w, PX); - } - } - m.fillStyle = "#e8e4dc"; - m.fillRect(x + PX / 2 - 0.5, y, 1, PX); - m.fillRect(x, y + PX * 0.45, PX, 1); - e.fillStyle = "#000"; - e.fillRect(x + PX / 2 - 0.5, y, 1, PX); - e.fillRect(x, y + PX * 0.45, PX, 1); - } else { - // Offices: a ceiling-light band and desks; some floors half lit. - m.fillStyle = "rgba(0,0,0,0.18)"; - m.fillRect(x, y + PX * 0.82, PX, PX * 0.18); - if (lit) { - const c = COOL[Math.floor(r() * COOL.length)]; - const g = e.createLinearGradient(x, y, x, y + PX); - g.addColorStop(0, c); - g.addColorStop(1, "rgba(90,60,30,0.9)"); - e.fillStyle = g; - e.globalAlpha = 0.45 + r() * 0.45; - e.fillRect(x, y, PX, PX); - e.globalAlpha = 1; - e.fillStyle = c; - e.fillRect(x, y + 1, PX, 1.5); - e.fillStyle = "rgba(0,0,0,0.5)"; - for (let i = 0; i < 2; i++) e.fillRect(x + 1 + r() * (PX - 6), y + PX * 0.62, 3 + r() * 3, PX * 0.38); - } else if (r() < 0.2) { - e.fillStyle = "#1a2a40"; - e.fillRect(x, y, PX, PX); - } - } - } - } - return [mc, ec]; -} - -const cache = new Map(); - -export function panes(kind: Pane): PaneSet { - let set = cache.get(kind); - if (!set) { - const seed = kind === "glass" ? 7919 : 977; - const [m, e] = draw(kind, seed, false); - const [bm, be] = draw(kind, seed + 1, true); - set = { map: texture(m), emissive: texture(e), brokenMap: texture(bm), brokenEmissive: texture(be) }; - cache.set(kind, set); - } - return set; -} - -/** A soft round sprite for particles. */ -export function puff(): THREE.Texture { - const c = document.createElement("canvas"); - c.width = c.height = 64; - const g = c.getContext("2d")!; - const grad = g.createRadialGradient(32, 32, 0, 32, 32, 32); - grad.addColorStop(0, "rgba(255,255,255,1)"); - grad.addColorStop(0.25, "rgba(255,255,255,0.55)"); - grad.addColorStop(0.6, "rgba(255,255,255,0.15)"); - grad.addColorStop(1, "rgba(255,255,255,0)"); - g.fillStyle = grad; - g.fillRect(0, 0, 64, 64); - const t = new THREE.CanvasTexture(c); - t.colorSpace = THREE.SRGBColorSpace; - return t; -} diff --git a/ui/src/city/traffic.ts b/ui/src/city/traffic.ts index ac75294..ed4c3c1 100644 --- a/ui/src/city/traffic.ts +++ b/ui/src/city/traffic.ts @@ -1,14 +1,12 @@ // City theme: street life. Cars, taxis, vans and buses loop around each // block in the right-hand lane; pedestrians walk the pavements. Both grow // with the tier, so a metropolis is busy and a hamlet sleepy. Every part of -// a kit model is one InstancedMesh, moved every frame; headlights, tail +// a model is one InstancedMesh, moved every frame; headlights, tail // lights and signs follow the night. import * as THREE from "three"; -import { piece } from "./kit"; import { BLOCK_X, BLOCK_Z, PAVEMENT, ROAD, blockLoop, rng, type CityPlan, type Loop } from "./plan"; -import { CAR_PAINTS, hasReal, realMat, realPiece } from "./real"; +import { CAR_PAINTS, realMat, realPiece } from "./real"; -const CAR_PAINT = [0xb8252a, 0x1f4e8c, 0xe8e6e0, 0x2a2c30, 0x8a8f96, 0x2f6b4a, 0xd9a03a, 0x6a2a4a, 0x3a7fb8, 0xc8c2b4]; const BUS_PAINT = [0xc0392b, 0x2e6fb5, 0x2a9a5a]; const SHIRTS = [0xc0392b, 0x2e6fb5, 0x2a9a5a, 0xe8b020, 0xf0ece4, 0x6a4a8a, 0xe07a30, 0x30343a, 0x8ab0d0, 0xd06a8a]; const PANTS = [0x2a3040, 0x3a3a3e, 0x4a3a2a, 0x1e2a4a, 0x6a6458, 0x202020]; @@ -18,23 +16,10 @@ const HAIR = [0x1a1410, 0x3a2414, 0x6a4424, 0xb08a50, 0x8a8a88]; interface Look { color: number; rough?: number; - metal?: number; - emissive?: number; - night?: number; - /** Emissive by day too (tail lights, signs), as a share of the night level. */ - day?: number; } +/** The figure's roles; colours come per person from the palettes above. */ const LOOKS: Record = { - body: { color: 0xffffff, rough: 0.35, metal: 0.35 }, - carglass: { color: 0x1a2028, rough: 0.1, metal: 0.6 }, - dark: { color: 0x222326, rough: 0.8 }, - tyre: { color: 0x151515, rough: 0.9 }, - chrome: { color: 0xc8ccd0, rough: 0.25, metal: 0.9 }, - headlight: { color: 0xfff6e0, emissive: 0xfff2d0, night: 3 }, - taillight: { color: 0x801010, emissive: 0xff2010, night: 2.2, day: 0.15 }, - taxisign: { color: 0xffd040, emissive: 0xffd040, night: 1.6, day: 0.2 }, - led: { color: 0x402000, emissive: 0xffa020, night: 1.8, day: 0.5 }, skin: { color: 0xffffff, rough: 0.8 }, shirt: { color: 0xffffff, rough: 0.9 }, pants: { color: 0xffffff, rough: 0.9 }, @@ -94,11 +79,8 @@ interface Mover { bob: number; } -/** The kit model standing in for each realistic vehicle when those are not loaded. */ -const KIT: Record = { - hatch: "car_hatch", sedan: "car_sedan", estate: "car_sedan", suv: "car_sedan", coupe: "car_hatch", - taxi: "car_taxi", pickup: "car_van", van: "car_van", truck: "car_van", bus: "bus", -}; +/** The vehicles in traffic (pieces of cars.glb). */ +const VEHICLES = ["hatch", "sedan", "estate", "suv", "coupe", "taxi", "pickup", "van", "truck", "bus"]; /** Vehicles per block and people per block, by tier. */ const CARS = [1, 2, 3, 4]; @@ -116,12 +98,7 @@ export class Traffic { let m = this.mats.get(role); if (!m) { const l = LOOKS[role] ?? { color: 0xff00ff }; - m = new THREE.MeshStandardMaterial({ color: l.color, roughness: l.rough ?? 0.6, metalness: l.metal ?? 0, vertexColors: true }); - if (l.emissive !== undefined) { - m.emissive.setHex(l.emissive); - m.userData.night = l.night; - m.userData.day = l.day ?? 0; - } + m = new THREE.MeshStandardMaterial({ color: l.color, roughness: l.rough ?? 0.6, vertexColors: true }); this.mats.set(role, m); } return m; @@ -157,21 +134,19 @@ export class Traffic { }); const count = (m: string) => plans.filter((v) => v.model === m).length; const fleets = new Map(); - const real = hasReal("cars"); this.lamps.clear(); const realMats = (role: string) => { const m = realMat("cars", role, { wall: -1, accent: 0, roof: 0, signs: 0 }, 0, "traffic") as THREE.MeshStandardMaterial; if (m.userData.night) this.lamps.add(m); return m; }; - for (const model of Object.keys(KIT)) { + for (const model of VEHICLES) { const n = count(model); if (!n) continue; - const colours = model === "taxi" ? [0xf2c12e] : model === "bus" ? BUS_PAINT : real ? CAR_PAINTS : CAR_PAINT; - const parts = real ? realPiece("cars", model) : piece(KIT[model]).parts; + const colours = model === "taxi" ? [0xf2c12e] : model === "bus" ? BUS_PAINT : CAR_PAINTS; + const parts = realPiece("cars", model); const withBlob = [...parts, { role: "blob", geo: blobGeo(parts) }]; - if (real) fleets.set(model, new Fleet(withBlob, n, { carpaint: colours }, (role) => (role === "blob" ? this.blob : realMats(role)), r)); - else fleets.set(model, new Fleet(withBlob, n, { body: colours }, (role) => (role === "blob" ? this.blob : this.mat(role)), r)); + fleets.set(model, new Fleet(withBlob, n, { carpaint: colours }, (role) => (role === "blob" ? this.blob : realMats(role)), r)); } const slots = new Map(); // The lane next to the block: a quarter of the way across the carriageway. @@ -188,16 +163,13 @@ export class Traffic { } const walkers = p.blocks.length * PEOPLE[tier]; - // The realistic figure (civic.py) when loaded; the same roles, so the - // same palettes. These materials read the kit's baked AO from vertex - // colours, so the figure gets plain white ones. - const figure = hasReal("civic") - ? realPiece("civic", "person").map(({ role, geo }) => { - const g = geo.clone(); - g.setAttribute("color", new THREE.Float32BufferAttribute(new Float32Array(g.getAttribute("position").count * 3).fill(1), 3)); - return { role, geo: g }; - }) - : piece("person").parts; + // The figure (civic.py), tinted per person by role. Its materials take + // vertex colours, so the figure gets plain white ones. + const figure = realPiece("civic", "person").map(({ role, geo }) => { + const g = geo.clone(); + g.setAttribute("color", new THREE.Float32BufferAttribute(new Float32Array(g.getAttribute("position").count * 3).fill(1), 3)); + return { role, geo: g }; + }); const people = new Fleet(figure, walkers, { shirt: SHIRTS, pants: PANTS, skin: SKIN, hair: HAIR }, this.mat, r); const walks = p.blocks.flatMap((b) => [ blockLoop(b.x, b.z, BLOCK_X / 2 + 0.5, BLOCK_Z / 2 + 0.5, 0.8), @@ -238,7 +210,7 @@ export class Traffic { /** 0 by day, 1 at night. */ setNight(night: number) { this.blob.opacity = 0.8 - 0.45 * night; - for (const m of [...this.mats.values(), ...this.lamps]) { + for (const m of this.lamps) { if (m.userData.night) m.emissiveIntensity = m.userData.night * Math.max(night, m.userData.day ?? 0); } } diff --git a/ui/src/main.ts b/ui/src/main.ts index 71101c7..aceebd3 100644 --- a/ui/src/main.ts +++ b/ui/src/main.ts @@ -66,18 +66,18 @@ function banner(text: string | null) { el.textContent = text ?? ""; } -/** The realistic city's download, while there is one to report (models.ts). */ +/** The city's models (models.ts) until they are all there and the city is drawn. */ let models: ModelsStatus | null = null; function modelsLine(): string { const mb = (n: number) => (n / 1e6).toFixed(0); switch (models?.state) { case "downloading": - return `
Realistic city: ${mb(models.done)} of ${mb(models.total)} MB downloaded
`; + return `
Downloading the city: ${mb(models.done)} of ${mb(models.total)} MB
`; case "retrying": - return `
Realistic city: download stalled, retrying in ${models.retry_secs < 60 ? `${models.retry_secs} s` : hm(models.retry_secs)}
`; - case "ready": - return `
Realistic city downloaded.
`; + return `
City download stalled, retrying in ${models.retry_secs < 60 ? `${models.retry_secs} s` : hm(models.retry_secs)}
`; + case "none": + return `
This build has no city models.
`; default: return ""; } @@ -566,7 +566,10 @@ async function poll() { if (busy) return; busy = true; try { - if (models && models.state !== "ready") models = await modelsStatus(); + if (!skyline && models && models.state !== "ready") { + models = await modelsStatus(); + if (models.state === "ready") void startCity(); + } status = await getStatus(); const s = status.session; const key = s ? `${s.id}:${s.state}` : "none"; @@ -600,25 +603,37 @@ async function poll() { window.addEventListener("error", (e) => banner(`UI error: ${e.message}`)); window.addEventListener("unhandledrejection", (e) => banner(`UI error: ${e.reason}`)); -// The HUD works without the skyline, so a renderer failure only costs the picture. -try { - skyline = await City.create($("#stage"), story); - skyline.onHover = hover; - if (skyline.models.state === "downloading" || skyline.models.state === "retrying") models = skyline.models; - skyline.onGraduate = levelUp; - skyline.onPick = (i) => { - skyline?.look(i); - openDeed(i); - }; - if (!("__TAURI_INTERNALS__" in window)) Object.assign(window, { city: skyline }); -} catch (e) { - console.error(e); - rendererError = `Skyline unavailable: ${e}`; -} -// The city was drawn with the kit while the models downloaded; a reload draws it again with them. -$("#city").addEventListener("click", (e) => { - if ((e.target as Element).closest('[data-action="show-models"]')) location.reload(); -}); +// The HUD works without the skyline: until the models are downloaded there is +// none, and a renderer failure only costs the picture. +let starting = false; +async function startCity() { + if (skyline || starting) return; + starting = true; + try { + const city = await City.create($("#stage"), story); + city.onHover = hover; + city.onGraduate = levelUp; + city.onPick = (i) => { + skyline?.look(i); + openDeed(i); + }; + skyline = city; + models = null; + rendererError = null; + if (!("__TAURI_INTERNALS__" in window)) Object.assign(window, { city: skyline }); + if (world) { + renderCity(world); + skyline.update(world, localHour(), status?.session?.elapsed_secs ?? 0); + } + } catch (e) { + console.error(e); + rendererError = `Skyline unavailable: ${e}`; + } finally { + starting = false; + } +} +models = await modelsStatus(); +if (models.state === "ready") await startCity(); await poll(); setInterval(poll, 1000); // `VITE_FPS=1` (dev server or build) adds a frame-rate readout with the 1% low, for tuning. diff --git a/ui/src/models.ts b/ui/src/models.ts index ec26132..cfd6b18 100644 --- a/ui/src/models.ts +++ b/ui/src/models.ts @@ -1,7 +1,7 @@ // Where the realistic city's models come from (docs/APP.md, "Model // packs"). A release build downloads them on first run (the app's // src-tauri/src/models.rs) and reads them through models://; until then the -// city is drawn with the low-poly kit. The dev server and the browser mock +// HUD shows the download and no city. The dev server and the browser mock // serve public/models as it is. import { invoke } from "@tauri-apps/api/core"; diff --git a/ui/src/proto/main.ts b/ui/src/proto/main.ts index cfd1d10..cdda3f5 100644 --- a/ui/src/proto/main.ts +++ b/ui/src/proto/main.ts @@ -16,10 +16,9 @@ import { EffectComposer } from "three/examples/jsm/postprocessing/EffectComposer import { RenderPass } from "three/examples/jsm/postprocessing/RenderPass.js"; import { UnrealBloomPass } from "three/examples/jsm/postprocessing/UnrealBloomPass.js"; import { OutputPass } from "three/examples/jsm/postprocessing/OutputPass.js"; -import { loadKit } from "../city/kit"; import { building, fitReal, furniture, KERB, Parts, rubble } from "../city/models"; import { LOT, PAVEMENT, type Spec } from "../city/plan"; -import { DEFS, hasReal, interiorUniforms, loadReal, PROPS, realAo, realMat, realPiece, realPieces, setRealEnv, setSignals } from "../city/real"; +import { DEFS, interiorUniforms, loadReal, PROPS, realAo, realMat, realPiece, realPieces, setRealEnv, setSignals } from "../city/real"; const q = new URLSearchParams(location.search); const hour = Number(q.get("hour") ?? 15); @@ -162,40 +161,21 @@ function street(cz: number) { g.add(m); } } - const pole = new THREE.MeshStandardMaterial({ color: 0x232527, roughness: 0.5, metalness: 0.5 }); - const bulb = new THREE.MeshStandardMaterial({ color: 0xfff2d8, emissive: 0xffd9a0, emissiveIntensity: night ? 6 : 0.2 }); - if (hasReal("street")) { - // The realistic street furniture: lamps reaching over the road, signals - // at the near corner, a hydrant and a bin. - const parts = new Parts(); - const e = pw / 2 - 0.55; - furniture(parts, "lamp_led", -pw / 2 + 0.6, KERB, cz + e, 0); - furniture(parts, "lamp_led", pw / 2 - 0.6, KERB, cz - e, Math.PI); - furniture(parts, "signal_mast", e, KERB, cz + e, Math.PI / 2, undefined, "a"); - furniture(parts, "signal_post", -e, KERB, cz - e, Math.PI, undefined, "b"); - furniture(parts, "hydrant", 3, KERB, cz + pw / 2 - 0.4); - furniture(parts, "bin", pw / 2 - 0.4, KERB, cz + 4); - parts.into(g); - g.traverse((o) => { - const m = (o as THREE.Mesh).material as THREE.MeshStandardMaterial | undefined; - if (m?.userData?.night) m.emissiveIntensity = night ? m.userData.night : 0; - }); - return g; - } - for (const [x, z] of [[pw / 2 - 0.6, cz + pw / 2 - 0.6], [-pw / 2 + 0.6, cz + pw / 2 - 0.6], [pw / 2 - 0.6, cz - pw / 2 + 0.6]]) { - const s = new THREE.Mesh(new THREE.CylinderGeometry(0.07, 0.11, 5.5, 12), pole); - s.position.set(x, 2.75 + KERB, z); - s.castShadow = true; - g.add(s); - const head = new THREE.Mesh(new THREE.CylinderGeometry(0.18, 0.32, 0.45, 12), bulb); - head.position.set(x, 5.6 + KERB, z); - g.add(head); - if (night) { - const l = new THREE.PointLight(0xffc98a, 18, 16, 1.6); - l.position.set(x, 5.2 + KERB, z); - g.add(l); - } - } + // The realistic street furniture: lamps reaching over the road, signals + // at the near corner, a hydrant and a bin. + const parts = new Parts(); + const e = pw / 2 - 0.55; + furniture(parts, "lamp_led", -pw / 2 + 0.6, KERB, cz + e, 0); + furniture(parts, "lamp_led", pw / 2 - 0.6, KERB, cz - e, Math.PI); + furniture(parts, "signal_mast", e, KERB, cz + e, Math.PI / 2, undefined, "a"); + furniture(parts, "signal_post", -e, KERB, cz - e, Math.PI, undefined, "b"); + furniture(parts, "hydrant", 3, KERB, cz + pw / 2 - 0.4); + furniture(parts, "bin", pw / 2 - 0.4, KERB, cz + 4); + parts.into(g); + g.traverse((o) => { + const m = (o as THREE.Mesh).material as THREE.MeshStandardMaterial | undefined; + if (m?.userData?.night) m.emissiveIntensity = night ? m.userData.night : 0; + }); return g; } @@ -253,7 +233,7 @@ function lineup() { scene.add(g); } -Promise.all([loadKit(), loadReal([id, ...PROPS], renderer)]).then(() => { +loadReal([id, ...PROPS], renderer, true).then(() => { if (props) { lineup(); frames = 0; diff --git a/ui/src/proto/town.ts b/ui/src/proto/town.ts index 48a6e3e..70ba4cc 100644 --- a/ui/src/proto/town.ts +++ b/ui/src/proto/town.ts @@ -28,7 +28,6 @@ import { ShaderPass } from "three/examples/jsm/postprocessing/ShaderPass.js"; import { SMAAPass } from "three/examples/jsm/postprocessing/SMAAPass.js"; import { FXAAPass } from "three/examples/jsm/postprocessing/FXAAPass.js"; import { mergeGeometries } from "three/examples/jsm/utils/BufferGeometryUtils.js"; -import { loadKit } from "../city/kit"; import { building, furniture, KERB, mat, park, parked, Parts, SPECIES, tree } from "../city/models"; import { BLOCK_X, BLOCK_Z, LOT, PAVEMENT, PITCH_X, PITCH_Z, rng, type Spec } from "../city/plan"; import { IMPOSTOR_NEAR, Impostors, loaded } from "../city/impostor"; @@ -561,7 +560,7 @@ function traffic() { // ---- go ---- -Promise.all([loadKit(), loadReal([...Object.keys(DEFS), ...PROPS], renderer)]).then(async () => { +loadReal([...Object.keys(DEFS), ...PROPS], renderer, true).then(async () => { const missing = [...Object.keys(DEFS), ...PROPS].filter((id) => !hasReal(id)); if (missing.length) console.warn("not built:", missing); const ground = new Parts(); diff --git a/ui/src/style.css b/ui/src/style.css index 4cf182e..7e661e1 100644 --- a/ui/src/style.css +++ b/ui/src/style.css @@ -180,7 +180,6 @@ button.link:hover:not(:disabled) { background: none; text-decoration: underline; .list .num { font-variant-numeric: tabular-nums; color: var(--muted-foreground); white-space: nowrap; } .list time { flex: none; width: 104px; color: var(--muted-foreground); font-variant-numeric: tabular-nums; } .list button.link { padding: 0; } -.models-ready button.link { padding: 0; margin-left: 4px; } .tag { font-size: 11px; padding: 1px 6px; border-radius: 4px; background: var(--muted); color: var(--muted-foreground); } .tag.loss { background: var(--loss-soft); color: var(--loss); } .tiles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 8px; }