feat(world): Materialrollen der Tribüne, Asset-Test je Ort
Fest: Sichtbeton, Estrich, Verkleidung, Stahl, Trapezblech, Riffelblech, Verglasung, utility_box_01. Nahflächen: Sichtbeton, Estrich, Verkleidung, Stahl, Sitzschale. Kabel, Kabeldosen, Wandleuchten und Kästen auf 0,25. Der Asset-Test prüft jede Datei aus PLACES gegen ihre eigene Zeile fester Materialien statt gegen die ganze globale Liste, Bump nur beim Hood Yard. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
e33c1817ec
commit
ae0f6106bb
5 files changed
+94
-21
No files matched your search
@@ -3,7 +3,8 @@ import { beforeAll, describe, expect, it } from "vitest";
|
||||
import { Document } from "@gltf-transform/core";
|
||||
import sharp from "sharp";
|
||||
import { EXT_MATERIALS_BUMP, EXTMaterialsBump } from "../tools/assets/bumpExtension.mjs";
|
||||
import { FAR_TEXTURE_SIZE, NEAR_TEXTURE_SIZE, optimizePlace, placeTarget } from "../tools/assets/places.mjs";
|
||||
import { FAR_TEXTURE_SIZE, NEAR_MATERIALS, NEAR_TEXTURE_SIZE, SIMPLIFY_RATIOS, optimizePlace, placeTarget }
|
||||
from "../tools/assets/places.mjs";
|
||||
|
||||
/** 1100 px große Streifen. seed macht die Bilder verschieden, sonst legt dedup() sie zusammen. */
|
||||
function stripes(seed) {
|
||||
@@ -114,3 +115,25 @@ describe("placeTarget", () => {
|
||||
expect(() => placeTarget("Hood Yard")).toThrow();
|
||||
});
|
||||
});
|
||||
|
||||
describe("Materiallisten der Tribüne", () => {
|
||||
// Bruch: Beton, Estrich, Verkleidung, Stahl oder Sitze fielen auf 512 px, obwohl der Spieler direkt
|
||||
// davorsteht — oder Dach und Kabinenboden, die man nur von weitem sieht, behielten 768 px.
|
||||
it("führt Beton, Estrich, Verkleidung, Stahl und Sitze als Nahflächen, Dach und Kabinenboden nicht", () => {
|
||||
for (const name of ["Sichtbeton", "Estrich", "Verkleidung", "Stahl", "Sitzschale"]) expect(NEAR_MATERIALS.has(name)).toBe(true);
|
||||
for (const name of ["Trapezblech", "Riffelblech"]) expect(NEAR_MATERIALS.has(name)).toBe(false);
|
||||
});
|
||||
|
||||
// Bruch: Kabel, Kästen und Leuchten blieben bei 64 000 Dreiecken, oder die Vereinfachung träfe Körper,
|
||||
// Dach, Geländer oder Sitze (Löcher in Wänden, schiefe Stufenkanten).
|
||||
it("vereinfacht nur die Kleinteile der Tribüne, auf 0,25", () => {
|
||||
for (const name of ["modular_electric_cables", "modular_electric_cables_boxes", "industrial_wall_lamp",
|
||||
"industrial_wall_lamp_glass", "power_box_01", "utility_box_01"]) {
|
||||
expect(SIMPLIFY_RATIOS.get(name)).toBe(0.25);
|
||||
}
|
||||
for (const name of ["Sichtbeton", "Estrich", "Verkleidung", "Stahl", "Trapezblech", "Riffelblech", "Verglasung",
|
||||
"Sitzschale"]) {
|
||||
expect(SIMPLIFY_RATIOS.has(name)).toBe(false);
|
||||
}
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user