@hypersoniclabs/helix-cli 0.1.25-helix3.492 → 0.1.25-helix3.494
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/continuum/workflow.js +3 -1
- package/dist/continuum/workflow.js.map +1 -1
- package/dist/cs2/buildingsLook.d.ts +86 -0
- package/dist/cs2/buildingsLook.js +273 -0
- package/dist/cs2/buildingsLook.js.map +1 -0
- package/dist/cs2/convert/buildingsCommand.d.ts +6 -0
- package/dist/cs2/convert/buildingsCommand.js +80 -0
- package/dist/cs2/convert/buildingsCommand.js.map +1 -0
- package/dist/cs2/convert/buildingsRestyle.d.ts +128 -0
- package/dist/cs2/convert/buildingsRestyle.js +510 -0
- package/dist/cs2/convert/buildingsRestyle.js.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_abs.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_audio.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_engine.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_expression.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_jbeam.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_materials.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_stock_events.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/fmod_studio.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/fsb5.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/sim_audio.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/sim_audio_ac.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/sim_audio_beamng.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/sim_audio_fixtures.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/test_beamng_engine.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/test_sim_audio.cpython-312.pyc +0 -0
|
@@ -555,8 +555,10 @@ function ownedObjectReferences(version, publications = []) {
|
|
|
555
555
|
refs.push(...(0, helix_manifest_1.continuumMaterialObjectReferences)(version.material));
|
|
556
556
|
if (version.scene)
|
|
557
557
|
refs.push(version.scene.document, ...version.scene.objects);
|
|
558
|
+
// A Code Package's bundle members (`runtimeModule.objects[]`: the code files plus the optional description and thumbnail)
|
|
559
|
+
// are Package-owned exactly like the attestations, so the closure the backend verifies is the closure the CLI uploads.
|
|
558
560
|
if (version.runtimeModule)
|
|
559
|
-
refs.push(version.runtimeModule.publisherAttestation, version.runtimeModule.sourceAttestation);
|
|
561
|
+
refs.push(version.runtimeModule.publisherAttestation, version.runtimeModule.sourceAttestation, ...(version.runtimeModule.objects ?? []));
|
|
560
562
|
const byCid = new Map();
|
|
561
563
|
for (const ref of refs) {
|
|
562
564
|
const current = byCid.get(ref.cid);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/continuum/workflow.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/continuum/workflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { type FacadeLanes } from '../city/buildings/facade';
|
|
2
|
+
export type BuildingZone = 'residential' | 'commercial' | 'office' | 'industrial' | 'mixed' | 'rural' | 'civic';
|
|
3
|
+
export type BuildingDensity = 'low' | 'medium' | 'high';
|
|
4
|
+
export interface BuildingKind {
|
|
5
|
+
prefab: string;
|
|
6
|
+
zone: BuildingZone;
|
|
7
|
+
density: BuildingDensity | null;
|
|
8
|
+
region: 'EU' | 'NA' | null;
|
|
9
|
+
/** The `_L<n>` level suffix, or null (signature and service buildings have none). */
|
|
10
|
+
level: number | null;
|
|
11
|
+
}
|
|
12
|
+
/** `EU_ResidentialLow01_L5_2x2_<32 hex>` and `..._Win_<32 hex>` both reduce to the prefab's own name. */
|
|
13
|
+
export declare function prefabOfMaterialName(materialName: string): string;
|
|
14
|
+
export declare function classifyPrefab(name: string): BuildingKind;
|
|
15
|
+
/** sRGB multipliers (0..1). The albedo is grey, so a colour here is the colour the wall reads as, times the grey's value. */
|
|
16
|
+
export type Srgb = readonly [number, number, number];
|
|
17
|
+
export interface Scheme {
|
|
18
|
+
name: string;
|
|
19
|
+
/** Mask red, green, blue: the main wall, a second wall or roof, and the trim. */
|
|
20
|
+
colors: readonly [Srgb, Srgb, Srgb];
|
|
21
|
+
}
|
|
22
|
+
/** Share of its own chroma every palette colour keeps (1 = the first, saturated stand-in; 0 = its luminance grey). */
|
|
23
|
+
export declare const CHROMA_KEEP = 0.5;
|
|
24
|
+
/** The saturated primaries (red, orange, yellow, teal, green, blue) and the pinks and mints keep less: CS2 has almost none of them. */
|
|
25
|
+
export declare const ACCENT_CHROMA_KEEP = 0.35;
|
|
26
|
+
/**
|
|
27
|
+
* Blend an sRGB colour toward its own luminance grey. Done in linear light on `Y = 0.2126 R + 0.7152 G + 0.0722 B`, so the colour keeps
|
|
28
|
+
* its luminance exactly (the albedo it multiplies keeps its brightness) and only the chroma shrinks, by `keep`.
|
|
29
|
+
*/
|
|
30
|
+
export declare function muteColor([r, g, b]: Srgb, keep: number): Srgb;
|
|
31
|
+
/** Every list holds a prime number (11) of schemes so a stride through it never repeats before the list is spent. */
|
|
32
|
+
export declare function schemesFor(kind: BuildingKind): readonly Scheme[];
|
|
33
|
+
/** FNV-1a over UTF-16 code units, then an avalanche. Stable across platforms: the restyle and its tests depend on it. */
|
|
34
|
+
export declare function hash32(text: string): number;
|
|
35
|
+
/**
|
|
36
|
+
* How many colourways a pool of prototypes gets, by how many buildings wear it (Granit: the three biggest pools are 1,498, 1,395 and
|
|
37
|
+
* 1,362 buildings; one colour for all of them is the grey city again). Each colourway is a distinct appearance (a material the
|
|
38
|
+
* renderer switches to) and a copy of the geometry (0.2 to 0.9 MB), so the ladder stops at 8 and a pool under 10 buildings stays one.
|
|
39
|
+
*/
|
|
40
|
+
export declare function variantCountFor(instances: number): number;
|
|
41
|
+
/** Which colourway building `entityId` wears: uniform over the prototype's variants, independent of every other building. */
|
|
42
|
+
export declare function variantIndex(entityId: number | string, variants: number): number;
|
|
43
|
+
/** Scheme of variant `k` of a prototype: a stride walk through the zone's list, so a prototype's variants never repeat. */
|
|
44
|
+
export declare function schemeOf(kind: BuildingKind, prototypeKey: string, k: number): Scheme;
|
|
45
|
+
/** A small deterministic value jitter (+-5 %) per prototype variant, so two variants with the same scheme still differ. */
|
|
46
|
+
export declare function jitterOf(prototypeKey: string, k: number): number;
|
|
47
|
+
/** Linear-light multipliers of a scheme's three colours, value-scaled by `jitter`. */
|
|
48
|
+
export declare function schemeLinear(scheme: Scheme, jitter?: number): [number, number, number][];
|
|
49
|
+
export interface TintResult {
|
|
50
|
+
/** RGBA, same size as the input; alpha untouched. */
|
|
51
|
+
data: Uint8Array;
|
|
52
|
+
/** Mean linear-light tinted / untinted over the opaque pixels, per channel: the colour a far mesh carries instead. */
|
|
53
|
+
ratio: [number, number, number];
|
|
54
|
+
/** Share of opaque pixels the mask colours. */
|
|
55
|
+
coverage: number;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* `albedo * (1 + sum_i w_i * (colour_i - 1))` in linear light, where `w` is the control mask's red/green/blue weight at the
|
|
59
|
+
* pixel (clamped so the three never sum past 1). Pixels outside the mask keep the captured albedo, which is how a window, a door or
|
|
60
|
+
* a painted-brick patch keeps its own colour. Both images are RGBA, the same size; `mask` may be RGB-only (alpha ignored).
|
|
61
|
+
*/
|
|
62
|
+
export declare function tintAlbedo(albedo: Uint8Array, mask: Uint8Array, linearColors: readonly [number, number, number][]): TintResult;
|
|
63
|
+
/** A vertex colour byte for a linear ratio. glTF `COLOR_0` is linear, so no transfer function. */
|
|
64
|
+
export declare const ratioToByte: (ratio: number) => number;
|
|
65
|
+
export interface FacadeLook {
|
|
66
|
+
/** Index into the engine's `FACADE_FAMILIES` (the CLI building generator's names are the base table). */
|
|
67
|
+
family: number;
|
|
68
|
+
familyName: string;
|
|
69
|
+
floorHeightM: number;
|
|
70
|
+
groundType: number;
|
|
71
|
+
bayWidthM: number;
|
|
72
|
+
windowRatio: number;
|
|
73
|
+
/** Tint palette index, 1..255 (0 is neutral). */
|
|
74
|
+
tint: number;
|
|
75
|
+
/** `_FACADE` lanes without the per-building seed (lane x low 10 bits) and height (lane w high byte): `facadeLanes` fills them. */
|
|
76
|
+
lanes: FacadeLanes;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* The engine facade parameters for a prototype: a style family by zone and colourway, a floor height and bay width by
|
|
80
|
+
* zone, a glazed share by zone, and the tint palette entry that matches the colourway. `heightM` and `seed` are per
|
|
81
|
+
* building and go through `facadeLanes`. NOT yet consumed at the HLOD tiers: the shared-material pool replaces every
|
|
82
|
+
* cluster mesh's material (`hlod/resources.ts`), so a `HELIX_materials_city` primitive there is discarded.
|
|
83
|
+
*/
|
|
84
|
+
export declare function facadeLookFor(kind: BuildingKind, prototypeKey: string, k: number): FacadeLook;
|
|
85
|
+
/** `_FACADE` lanes of one building: its prototype's look plus its own height class and seed. */
|
|
86
|
+
export declare function facadeLanes(look: Pick<FacadeLook, 'family' | 'floorHeightM' | 'groundType' | 'bayWidthM' | 'windowRatio' | 'tint'>, heightM: number, seed: number): FacadeLanes;
|
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// The look of a captured Cities: Skylines II building: which colours it wears and how a flat grey albedo takes them.
|
|
3
|
+
//
|
|
4
|
+
// WHY THIS EXISTS. CS2 draws a building from a NEUTRAL albedo (the captured `_BaseColorMap` has a median chroma of 0.7 of 255
|
|
5
|
+
// across the 315 Granit building maps) plus a `_ControlMask` whose red/green/blue regions the game fills, per instance, with a
|
|
6
|
+
// three-colour `ColorSet`. The exporter (`PacificaExportMod.cs`, `CaptureSurfaceMaterial`) keeps the base map only, the
|
|
7
|
+
// materials' `colors` and `vectors` are empty, and no placement record carries a colour (`placements.ts`
|
|
8
|
+
// PLACEMENT_RECORD_STRIDE = 4: prefab, entity, owner, depth). Rendered as captured every building is the same grey. This
|
|
9
|
+
// module is the missing half: a deterministic stand-in ColorSet per building, chosen from palettes that read like CS2's own
|
|
10
|
+
// (muted renders, brick, pastel plaster, glass and steel for offices, pale metal for industry), and the maths that applies it.
|
|
11
|
+
//
|
|
12
|
+
// TONED TO CS2. The first stand-in palette was far more saturated than the game: salmon, mint, teal and orange walls where the
|
|
13
|
+
// real Granit overview is mostly white, light grey, beige and tan with dull brick and a few subdued pastels (and grey-blue glass
|
|
14
|
+
// on offices). Every palette colour now goes through `muteColor`, a blend toward its own luminance grey (linear light, so a
|
|
15
|
+
// building keeps its brightness), with the saturated primaries pulled down harder. `CHROMA_KEEP` and `ACCENT_CHROMA_KEEP` are the two
|
|
16
|
+
// numbers; `buildingsLook.spec.ts` bounds the resulting mean saturation.
|
|
17
|
+
//
|
|
18
|
+
// Pure: no I/O, no three, no gltf-transform. `convert/buildingsRestyle.ts` does the files.
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
exports.ratioToByte = exports.ACCENT_CHROMA_KEEP = exports.CHROMA_KEEP = void 0;
|
|
21
|
+
exports.prefabOfMaterialName = prefabOfMaterialName;
|
|
22
|
+
exports.classifyPrefab = classifyPrefab;
|
|
23
|
+
exports.muteColor = muteColor;
|
|
24
|
+
exports.schemesFor = schemesFor;
|
|
25
|
+
exports.hash32 = hash32;
|
|
26
|
+
exports.variantCountFor = variantCountFor;
|
|
27
|
+
exports.variantIndex = variantIndex;
|
|
28
|
+
exports.schemeOf = schemeOf;
|
|
29
|
+
exports.jitterOf = jitterOf;
|
|
30
|
+
exports.schemeLinear = schemeLinear;
|
|
31
|
+
exports.tintAlbedo = tintAlbedo;
|
|
32
|
+
exports.facadeLookFor = facadeLookFor;
|
|
33
|
+
exports.facadeLanes = facadeLanes;
|
|
34
|
+
const facade_1 = require("../city/buildings/facade");
|
|
35
|
+
/** `EU_ResidentialLow01_L5_2x2_<32 hex>` and `..._Win_<32 hex>` both reduce to the prefab's own name. */
|
|
36
|
+
function prefabOfMaterialName(materialName) {
|
|
37
|
+
return materialName.replace(/_[0-9a-f]{32}$/i, '').replace(/_(Win|Sub\d+)(_.*)?$/i, '');
|
|
38
|
+
}
|
|
39
|
+
function classifyPrefab(name) {
|
|
40
|
+
const prefab = prefabOfMaterialName(name);
|
|
41
|
+
const region = /^EU_/.test(prefab) ? 'EU' : /^NA_/.test(prefab) ? 'NA' : null;
|
|
42
|
+
const level = /_L(\d+)(?:_|$)/.exec(prefab)?.[1];
|
|
43
|
+
const density = /Low/.test(prefab) ? 'low' : /Medium/.test(prefab) ? 'medium' : /High/.test(prefab) ? 'high' : null;
|
|
44
|
+
let zone = 'civic';
|
|
45
|
+
if (/Extractor|Agricultur|Greenhouse|CattleShed|ChickenCoop|OilPump|OilDrilling|OreDrift|Forestry|Quarry|BucketWheel|Mine\d|Sawmill|Barn/i.test(prefab))
|
|
46
|
+
zone = 'rural';
|
|
47
|
+
else if (/Mixed/.test(prefab))
|
|
48
|
+
zone = 'mixed';
|
|
49
|
+
else if (/Residential/.test(prefab))
|
|
50
|
+
zone = 'residential';
|
|
51
|
+
else if (/Office/.test(prefab))
|
|
52
|
+
zone = 'office';
|
|
53
|
+
else if (/Industrial|Warehouse|Factory|Manufactur|Depot|CargoHarbor|CargoTrain|Powerplant|PowerPlant|Treatment|Recycling|Incinerat|Landfill|Pumping|Desalination/i.test(prefab))
|
|
54
|
+
zone = 'industrial';
|
|
55
|
+
else if (/Commercial|Shop|Supermarket|Mall|GasStation|Hotel|Restaurant|Cinema|Bank|Parking/i.test(prefab))
|
|
56
|
+
zone = 'commercial';
|
|
57
|
+
return { prefab, zone, density, region, level: level === undefined ? null : Number(level) };
|
|
58
|
+
}
|
|
59
|
+
const toLinear = (v) => (v <= 0.04045 ? v / 12.92 : ((v + 0.055) / 1.055) ** 2.4);
|
|
60
|
+
const fromLinear = (v) => (v <= 0.0031308 ? v * 12.92 : 1.055 * v ** (1 / 2.4) - 0.055);
|
|
61
|
+
/** Share of its own chroma every palette colour keeps (1 = the first, saturated stand-in; 0 = its luminance grey). */
|
|
62
|
+
exports.CHROMA_KEEP = 0.5;
|
|
63
|
+
/** The saturated primaries (red, orange, yellow, teal, green, blue) and the pinks and mints keep less: CS2 has almost none of them. */
|
|
64
|
+
exports.ACCENT_CHROMA_KEEP = 0.35;
|
|
65
|
+
/**
|
|
66
|
+
* Blend an sRGB colour toward its own luminance grey. Done in linear light on `Y = 0.2126 R + 0.7152 G + 0.0722 B`, so the colour keeps
|
|
67
|
+
* its luminance exactly (the albedo it multiplies keeps its brightness) and only the chroma shrinks, by `keep`.
|
|
68
|
+
*/
|
|
69
|
+
function muteColor([r, g, b], keep) {
|
|
70
|
+
const lin = [toLinear(r), toLinear(g), toLinear(b)];
|
|
71
|
+
const y = 0.2126 * lin[0] + 0.7152 * lin[1] + 0.0722 * lin[2];
|
|
72
|
+
const out = lin.map((v) => Math.min(1, Math.max(0, fromLinear(y + keep * (v - y)))));
|
|
73
|
+
return [out[0], out[1], out[2]];
|
|
74
|
+
}
|
|
75
|
+
const c = (r, g, b) => muteColor([r / 255, g / 255, b / 255], exports.CHROMA_KEEP);
|
|
76
|
+
const accent = (r, g, b) => muteColor([r / 255, g / 255, b / 255], exports.ACCENT_CHROMA_KEEP);
|
|
77
|
+
const scheme = (name, a, b, d) => ({ name, colors: [a, b, d] });
|
|
78
|
+
const CREAM = c(255, 240, 205), BUTTER = c(255, 232, 160), OCHRE = c(238, 196, 120), SAND = c(235, 215, 180), WHITE = c(250, 248, 242);
|
|
79
|
+
const BRICK = c(235, 130, 105), CLAY = c(220, 150, 120), TERRACOTTA = c(240, 150, 105), ROSE = accent(245, 190, 180), BROWN = c(170, 125, 100);
|
|
80
|
+
const SAGE = c(190, 220, 170), MINT = accent(180, 225, 200), SKY = c(170, 205, 245), POWDER = c(195, 215, 235), SLATE = c(140, 160, 185);
|
|
81
|
+
const STEEL = c(190, 200, 212), GREY = c(215, 215, 212), CHARCOAL = c(120, 124, 130), TEAL = accent(120, 190, 195), NAVY = c(95, 120, 165);
|
|
82
|
+
const RED = accent(235, 90, 80), GREEN = accent(110, 180, 120), YELLOW = accent(255, 215, 90), ORANGE = accent(250, 160, 80), BLUE = accent(100, 150, 230);
|
|
83
|
+
const RESIDENTIAL_EU = [
|
|
84
|
+
scheme('cream', CREAM, TERRACOTTA, BROWN), scheme('brick', BRICK, GREY, CHARCOAL), scheme('ochre', OCHRE, CLAY, WHITE),
|
|
85
|
+
scheme('white-plaster', WHITE, TERRACOTTA, SLATE), scheme('rose', ROSE, CREAM, BROWN), scheme('butter', BUTTER, BRICK, WHITE),
|
|
86
|
+
scheme('sage', SAGE, CREAM, BROWN), scheme('powder', POWDER, WHITE, CHARCOAL), scheme('sand', SAND, BRICK, WHITE),
|
|
87
|
+
scheme('terracotta', TERRACOTTA, CREAM, CHARCOAL), scheme('clay', CLAY, SAND, BROWN),
|
|
88
|
+
];
|
|
89
|
+
const RESIDENTIAL_NA = [
|
|
90
|
+
scheme('white-siding', WHITE, GREY, CHARCOAL), scheme('beige-siding', SAND, BROWN, WHITE), scheme('sage-siding', SAGE, WHITE, BROWN),
|
|
91
|
+
scheme('blue-siding', POWDER, WHITE, NAVY), scheme('brick', BRICK, CREAM, CHARCOAL), scheme('grey-siding', GREY, SLATE, WHITE),
|
|
92
|
+
scheme('butter-siding', BUTTER, WHITE, BROWN), scheme('clay-siding', CLAY, CREAM, CHARCOAL), scheme('mint-siding', MINT, WHITE, SLATE),
|
|
93
|
+
scheme('terracotta', TERRACOTTA, SAND, BROWN), scheme('taupe', c(205, 190, 175), WHITE, CHARCOAL),
|
|
94
|
+
];
|
|
95
|
+
const COMMERCIAL = [
|
|
96
|
+
scheme('white', WHITE, GREY, RED), scheme('light-grey', GREY, WHITE, BLUE), scheme('cream-red', CREAM, BRICK, RED),
|
|
97
|
+
scheme('sky', SKY, WHITE, NAVY), scheme('butter', BUTTER, WHITE, ORANGE), scheme('mint', MINT, WHITE, GREEN),
|
|
98
|
+
scheme('steel', STEEL, WHITE, YELLOW), scheme('sand', SAND, WHITE, TEAL), scheme('rose', ROSE, WHITE, CHARCOAL),
|
|
99
|
+
scheme('terracotta', TERRACOTTA, CREAM, BLUE), scheme('powder', POWDER, GREY, ORANGE),
|
|
100
|
+
];
|
|
101
|
+
const OFFICE = [
|
|
102
|
+
scheme('steel-blue', STEEL, SLATE, WHITE), scheme('glass-blue', c(150, 190, 235), STEEL, WHITE), scheme('glass-teal', TEAL, STEEL, WHITE),
|
|
103
|
+
scheme('graphite', c(150, 154, 160), STEEL, WHITE), scheme('white-curtain', WHITE, STEEL, SLATE), scheme('navy-glass', NAVY, STEEL, WHITE),
|
|
104
|
+
scheme('sand-stone', SAND, STEEL, CHARCOAL), scheme('glass-green', c(140, 200, 180), STEEL, WHITE), scheme('light-grey', GREY, SLATE, WHITE),
|
|
105
|
+
scheme('powder', POWDER, WHITE, NAVY), scheme('bronze', c(190, 165, 140), STEEL, CHARCOAL),
|
|
106
|
+
];
|
|
107
|
+
const INDUSTRIAL = [
|
|
108
|
+
scheme('pale-grey', GREY, STEEL, SLATE), scheme('blue-grey', c(175, 190, 205), GREY, NAVY), scheme('tan', c(220, 200, 165), GREY, BROWN),
|
|
109
|
+
scheme('olive', c(190, 195, 150), GREY, CHARCOAL), scheme('white-metal', WHITE, STEEL, BLUE), scheme('green-metal', c(160, 195, 165), GREY, GREEN),
|
|
110
|
+
scheme('red-door', GREY, STEEL, RED), scheme('sky-metal', SKY, GREY, SLATE), scheme('brick', c(205, 150, 130), GREY, CHARCOAL),
|
|
111
|
+
scheme('sand', SAND, STEEL, ORANGE), scheme('charcoal', c(150, 154, 158), STEEL, YELLOW),
|
|
112
|
+
];
|
|
113
|
+
const RURAL = [
|
|
114
|
+
scheme('barn-red', c(215, 105, 90), WHITE, CHARCOAL), scheme('white-barn', WHITE, c(190, 90, 80), CHARCOAL), scheme('weathered', c(185, 170, 150), GREY, BROWN),
|
|
115
|
+
scheme('sage-metal', c(175, 200, 170), GREY, CHARCOAL), scheme('tin', STEEL, GREY, SLATE), scheme('cream', CREAM, BRICK, BROWN),
|
|
116
|
+
scheme('ochre', OCHRE, GREY, BROWN), scheme('sky-metal', SKY, WHITE, SLATE), scheme('olive', c(190, 195, 150), GREY, BROWN),
|
|
117
|
+
scheme('silver', c(205, 210, 215), WHITE, CHARCOAL), scheme('green-barn', c(150, 190, 150), WHITE, CHARCOAL),
|
|
118
|
+
];
|
|
119
|
+
const CIVIC = [
|
|
120
|
+
scheme('limestone', c(240, 232, 215), SAND, SLATE), scheme('brick', BRICK, CREAM, CHARCOAL), scheme('white', WHITE, GREY, NAVY),
|
|
121
|
+
scheme('sandstone', c(235, 210, 170), CREAM, BROWN), scheme('grey-stone', GREY, STEEL, CHARCOAL), scheme('buff', c(235, 220, 185), BRICK, SLATE),
|
|
122
|
+
scheme('powder', POWDER, WHITE, SLATE), scheme('sage', SAGE, CREAM, CHARCOAL), scheme('rose-stone', ROSE, CREAM, BROWN),
|
|
123
|
+
scheme('terracotta', TERRACOTTA, SAND, CHARCOAL), scheme('pale-green', c(205, 225, 195), WHITE, SLATE),
|
|
124
|
+
];
|
|
125
|
+
/** Every list holds a prime number (11) of schemes so a stride through it never repeats before the list is spent. */
|
|
126
|
+
function schemesFor(kind) {
|
|
127
|
+
switch (kind.zone) {
|
|
128
|
+
case 'residential': return kind.region === 'NA' ? RESIDENTIAL_NA : RESIDENTIAL_EU;
|
|
129
|
+
case 'mixed': return kind.region === 'NA' ? RESIDENTIAL_NA : RESIDENTIAL_EU;
|
|
130
|
+
case 'commercial': return COMMERCIAL;
|
|
131
|
+
case 'office': return OFFICE;
|
|
132
|
+
case 'industrial': return INDUSTRIAL;
|
|
133
|
+
case 'rural': return RURAL;
|
|
134
|
+
default: return CIVIC;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
// ------------------------------------------------------------------------------------------------------------ choosing
|
|
138
|
+
/** FNV-1a over UTF-16 code units, then an avalanche. Stable across platforms: the restyle and its tests depend on it. */
|
|
139
|
+
function hash32(text) {
|
|
140
|
+
let h = 0x811c9dc5;
|
|
141
|
+
for (let i = 0; i < text.length; i += 1) {
|
|
142
|
+
h ^= text.charCodeAt(i);
|
|
143
|
+
h = Math.imul(h, 0x01000193);
|
|
144
|
+
}
|
|
145
|
+
h ^= h >>> 16;
|
|
146
|
+
h = Math.imul(h, 0x85ebca6b);
|
|
147
|
+
h ^= h >>> 13;
|
|
148
|
+
h = Math.imul(h, 0xc2b2ae35);
|
|
149
|
+
h ^= h >>> 16;
|
|
150
|
+
return h >>> 0;
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* How many colourways a pool of prototypes gets, by how many buildings wear it (Granit: the three biggest pools are 1,498, 1,395 and
|
|
154
|
+
* 1,362 buildings; one colour for all of them is the grey city again). Each colourway is a distinct appearance (a material the
|
|
155
|
+
* renderer switches to) and a copy of the geometry (0.2 to 0.9 MB), so the ladder stops at 8 and a pool under 10 buildings stays one.
|
|
156
|
+
*/
|
|
157
|
+
function variantCountFor(instances) {
|
|
158
|
+
if (instances >= 1000)
|
|
159
|
+
return 8;
|
|
160
|
+
if (instances >= 300)
|
|
161
|
+
return 6;
|
|
162
|
+
if (instances >= 100)
|
|
163
|
+
return 4;
|
|
164
|
+
if (instances >= 40)
|
|
165
|
+
return 3;
|
|
166
|
+
if (instances >= 10)
|
|
167
|
+
return 2;
|
|
168
|
+
return 1;
|
|
169
|
+
}
|
|
170
|
+
/** Which colourway building `entityId` wears: uniform over the prototype's variants, independent of every other building. */
|
|
171
|
+
function variantIndex(entityId, variants) {
|
|
172
|
+
return variants <= 1 ? 0 : hash32(`building:${entityId}`) % variants;
|
|
173
|
+
}
|
|
174
|
+
const gcd = (a, b) => (b === 0 ? a : gcd(b, a % b));
|
|
175
|
+
/** Scheme of variant `k` of a prototype: a stride walk through the zone's list, so a prototype's variants never repeat. */
|
|
176
|
+
function schemeOf(kind, prototypeKey, k) {
|
|
177
|
+
const list = schemesFor(kind);
|
|
178
|
+
const h = hash32(`${kind.zone}:${prototypeKey}`);
|
|
179
|
+
let stride = 1 + ((h >>> 8) % (list.length - 1));
|
|
180
|
+
while (gcd(stride, list.length) !== 1)
|
|
181
|
+
stride += 1;
|
|
182
|
+
return list[(h + k * stride) % list.length];
|
|
183
|
+
}
|
|
184
|
+
/** A small deterministic value jitter (+-5 %) per prototype variant, so two variants with the same scheme still differ. */
|
|
185
|
+
function jitterOf(prototypeKey, k) {
|
|
186
|
+
return 0.95 + 0.1 * (hash32(`jitter:${prototypeKey}:${k}`) / 0xffffffff);
|
|
187
|
+
}
|
|
188
|
+
// -------------------------------------------------------------------------------------------------------- applying
|
|
189
|
+
const LINEAR_LUT = (() => { const lut = new Float32Array(256); for (let i = 0; i < 256; i += 1)
|
|
190
|
+
lut[i] = toLinear(i / 255); return lut; })();
|
|
191
|
+
/** Linear-light multipliers of a scheme's three colours, value-scaled by `jitter`. */
|
|
192
|
+
function schemeLinear(scheme, jitter = 1) {
|
|
193
|
+
return scheme.colors.map(([r, g, b]) => [Math.min(1, toLinear(r) * jitter), Math.min(1, toLinear(g) * jitter), Math.min(1, toLinear(b) * jitter)]);
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* `albedo * (1 + sum_i w_i * (colour_i - 1))` in linear light, where `w` is the control mask's red/green/blue weight at the
|
|
197
|
+
* pixel (clamped so the three never sum past 1). Pixels outside the mask keep the captured albedo, which is how a window, a door or
|
|
198
|
+
* a painted-brick patch keeps its own colour. Both images are RGBA, the same size; `mask` may be RGB-only (alpha ignored).
|
|
199
|
+
*/
|
|
200
|
+
function tintAlbedo(albedo, mask, linearColors) {
|
|
201
|
+
if (albedo.length !== mask.length || albedo.length % 4)
|
|
202
|
+
throw new Error(`tintAlbedo: albedo (${albedo.length} B) and mask (${mask.length} B) must be the same RGBA size`);
|
|
203
|
+
const out = new Uint8Array(albedo.length);
|
|
204
|
+
const sumBefore = [0, 0, 0], sumAfter = [0, 0, 0];
|
|
205
|
+
let opaque = 0, covered = 0;
|
|
206
|
+
for (let i = 0; i < albedo.length; i += 4) {
|
|
207
|
+
let w0 = mask[i] / 255, w1 = mask[i + 1] / 255, w2 = mask[i + 2] / 255;
|
|
208
|
+
const total = w0 + w1 + w2;
|
|
209
|
+
if (total > 1) {
|
|
210
|
+
w0 /= total;
|
|
211
|
+
w1 /= total;
|
|
212
|
+
w2 /= total;
|
|
213
|
+
}
|
|
214
|
+
const lin = [LINEAR_LUT[albedo[i]], LINEAR_LUT[albedo[i + 1]], LINEAR_LUT[albedo[i + 2]]];
|
|
215
|
+
for (let ch = 0; ch < 3; ch += 1) {
|
|
216
|
+
const gain = 1 + w0 * (linearColors[0][ch] - 1) + w1 * (linearColors[1][ch] - 1) + w2 * (linearColors[2][ch] - 1);
|
|
217
|
+
const tinted = lin[ch] * gain;
|
|
218
|
+
out[i + ch] = Math.round(Math.min(1, Math.max(0, fromLinear(tinted))) * 255);
|
|
219
|
+
if (albedo[i + 3] >= 128) {
|
|
220
|
+
sumBefore[ch] += lin[ch];
|
|
221
|
+
sumAfter[ch] += tinted;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
out[i + 3] = albedo[i + 3];
|
|
225
|
+
if (albedo[i + 3] >= 128) {
|
|
226
|
+
opaque += 1;
|
|
227
|
+
if (w0 + w1 + w2 > 0.5)
|
|
228
|
+
covered += 1;
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
const ratio = sumBefore.map((before, ch) => (before > 1e-9 ? Math.min(1, sumAfter[ch] / before) : 1));
|
|
232
|
+
return { data: out, ratio, coverage: opaque ? covered / opaque : 0 };
|
|
233
|
+
}
|
|
234
|
+
/** A vertex colour byte for a linear ratio. glTF `COLOR_0` is linear, so no transfer function. */
|
|
235
|
+
const ratioToByte = (ratio) => Math.round(Math.min(1, Math.max(0, ratio)) * 255);
|
|
236
|
+
exports.ratioToByte = ratioToByte;
|
|
237
|
+
const FAMILY_BY_ZONE = {
|
|
238
|
+
residential: ['brick-red', 'brick-buff', 'white-render', 'stucco', 'terracotta', 'brick-brown', 'limestone'],
|
|
239
|
+
mixed: ['brick-buff', 'stucco', 'limestone', 'brick-red', 'white-render', 'party-brick'],
|
|
240
|
+
commercial: ['white-render', 'concrete-punched', 'ribbon-white', 'limestone', 'stucco', 'glass-grey'],
|
|
241
|
+
office: ['glass-blue', 'glass-grey', 'glass-green', 'ribbon-white', 'ribbon-concrete', 'concrete-punched'],
|
|
242
|
+
industrial: ['warehouse-metal', 'industrial-ribbon', 'warehouse-brick', 'ribbon-concrete'],
|
|
243
|
+
rural: ['warehouse-metal', 'warehouse-brick', 'white-render'],
|
|
244
|
+
civic: ['civic-limestone', 'limestone', 'brick-buff', 'white-render'],
|
|
245
|
+
};
|
|
246
|
+
/**
|
|
247
|
+
* The engine facade parameters for a prototype: a style family by zone and colourway, a floor height and bay width by
|
|
248
|
+
* zone, a glazed share by zone, and the tint palette entry that matches the colourway. `heightM` and `seed` are per
|
|
249
|
+
* building and go through `facadeLanes`. NOT yet consumed at the HLOD tiers: the shared-material pool replaces every
|
|
250
|
+
* cluster mesh's material (`hlod/resources.ts`), so a `HELIX_materials_city` primitive there is discarded.
|
|
251
|
+
*/
|
|
252
|
+
function facadeLookFor(kind, prototypeKey, k) {
|
|
253
|
+
const families = FAMILY_BY_ZONE[kind.zone];
|
|
254
|
+
const h = hash32(`facade:${prototypeKey}:${k}`);
|
|
255
|
+
const familyName = families[h % families.length];
|
|
256
|
+
const family = facade_1.FACADE_FAMILY_NAMES.indexOf(familyName);
|
|
257
|
+
const floorHeightM = kind.zone === 'industrial' || kind.zone === 'rural' ? 5.5 : kind.zone === 'office' ? 3.8 : kind.zone === 'commercial' ? 3.6 : 3.1;
|
|
258
|
+
const bayWidthM = kind.zone === 'office' ? 1.5 : kind.zone === 'industrial' || kind.zone === 'rural' ? 6 : kind.zone === 'commercial' ? 3.4 : 2.9;
|
|
259
|
+
const windowRatio = kind.zone === 'office' ? 0.8 : kind.zone === 'commercial' ? 0.55 : kind.zone === 'industrial' || kind.zone === 'rural' ? 0.12 : 0.42;
|
|
260
|
+
const groundType = kind.zone === 'commercial' || kind.zone === 'mixed' ? facade_1.GROUND_TYPE.STOREFRONT : kind.zone === 'office' ? facade_1.GROUND_TYPE.LOBBY
|
|
261
|
+
: kind.zone === 'residential' ? facade_1.GROUND_TYPE.RESIDENTIAL : facade_1.GROUND_TYPE.BLANK;
|
|
262
|
+
const tint = 1 + ((h >>> 9) % 255);
|
|
263
|
+
const look = { family, familyName, floorHeightM, groundType, bayWidthM, windowRatio, tint };
|
|
264
|
+
return { ...look, lanes: facadeLanes(look, 0, 0) };
|
|
265
|
+
}
|
|
266
|
+
/** `_FACADE` lanes of one building: its prototype's look plus its own height class and seed. */
|
|
267
|
+
function facadeLanes(look, heightM, seed) {
|
|
268
|
+
return (0, facade_1.packFacade)({
|
|
269
|
+
family: look.family, seed: seed & 1023, floorHeightM: look.floorHeightM, groundType: look.groundType, groundExtraM: look.groundType === facade_1.GROUND_TYPE.STOREFRONT ? 0.75 : 0,
|
|
270
|
+
bayWidthM: look.bayWidthM, windowRatio: look.windowRatio, tint: look.tint, heightM,
|
|
271
|
+
});
|
|
272
|
+
}
|
|
273
|
+
//# sourceMappingURL=buildingsLook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildingsLook.js","sourceRoot":"","sources":["../../src/cs2/buildingsLook.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Command } from 'commander';
|
|
2
|
+
/**
|
|
3
|
+
* `helix cs2 restyle-buildings`: gives the captured Granit buildings their colour back. See `buildingsRestyle.ts` for what
|
|
4
|
+
* it writes. The caller attaches it to the `cs2` group `src/index.ts` already registers (or to any `Command`).
|
|
5
|
+
*/
|
|
6
|
+
export declare function registerCs2RestyleBuildings(parent: Command, fail: (message: string) => never): void;
|