Resource Manager: Materialien-Tab mit PBR-Kugel-Vorschau, Suche und Kategorie-Chips

Geteilter Offscreen-three.js-Renderer (ein Kontext, serielle Queue, Cache
per Map-Signatur) rendert 128px-Kugeln lazy via IntersectionObserver.
Kategorie-Chips aus der Bibliothek abgeleitet, uneinheitliche Manifest-
Schreibweisen normalisiert; Suche und Kategorie kombinierbar. Kachel-Klick
markiert aktiv (gleiche Sprache wie MaterialPicker). Puppeteer-Probe
scripts/probe-material-tiles.mjs prüft Grid, Lazy-Render und Filter.
This commit is contained in:
2026-07-03 02:04:33 +02:00
parent 519735c782
commit 87d12b976f
6 changed files with 597 additions and 1 deletions
+10
View File
@@ -433,6 +433,16 @@ export const de = {
"resources.tab.components": "Bauteile",
"resources.tab.hatches": "Schraffuren",
"resources.tab.lines": "Linien",
"resources.tab.materials": "Materialien",
"resources.materials.hint":
"Kugel-Vorschau der eingebauten PBR-Materialbibliothek — durchsuchen und vergleichen. Zuweisen an ein Bauteil weiterhin über dessen Spalte „Material …\".",
"resources.materials.searchPlaceholder": "Material suchen …",
"resources.materials.categoryLabel": "Kategorie",
"resources.materials.categoryAll": "Alle",
"resources.materials.selected": "Ausgewählt: {name} ({category})",
"resources.materials.empty": "Keine Materialien gefunden.",
"resources.materials.count": "{shown} von {total} Materialien",
"resources.add": "Neu",
"resources.import.lin": "⤓ .lin importieren",
"resources.import.pat": "⤓ .pat importieren",
+10
View File
@@ -430,6 +430,16 @@ export const en: Record<TranslationKey, string> = {
"resources.tab.components": "Components",
"resources.tab.hatches": "Hatches",
"resources.tab.lines": "Lines",
"resources.tab.materials": "Materials",
"resources.materials.hint":
"Sphere preview of the built-in PBR material library — browse and compare. Assign to a component still via its “Material …” column.",
"resources.materials.searchPlaceholder": "Search materials …",
"resources.materials.categoryLabel": "Category",
"resources.materials.categoryAll": "All",
"resources.materials.selected": "Selected: {name} ({category})",
"resources.materials.empty": "No materials found.",
"resources.materials.count": "{shown} of {total} materials",
"resources.add": "New",
"resources.import.lin": "⤓ Import .lin",
"resources.import.pat": "⤓ Import .pat",