Commit Graph

110 Commits

Author SHA1 Message Date
b79ccaa1e0 Weltkarte Wald: Outline-Fill-Mismatch fix + Kleinstpolygon-Filter
- buildForestOutlinePaths: bilineare Interpolation statt NN → Outline liegt
  exakt auf der gleichen Schwelle wie die Füllung in computeForestPixels
- Perimeter-Filter: Pfade mit Umfang < 60m² werden verworfen (Artefakte
  aus 1-2 isolierten Bäumen)
- Threshold 2.0 → 3.0: 2 Bäume ergeben max. Density=2, liegen damit unter
  der Schwelle → kein Wald-Ring mehr bei Kleingruppen

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-03 18:28:17 +02:00
28cc89dcb1 Weltkarte: Wald-Linien Z-Flip fix + korrekte Layer-Reihenfolge
- buildForestOutlinePaths: Density-Map hat Z invertiert (Nord=mz=0) gegenüber
  Marching-Squares-Koordinaten (Süd=mz=0) → gespiegelte Konturen landeten
  off-screen, kein sichtbarer Wald-Rand. Fix: dz = fdSize-1-mz beim Samplen.
- Render-Reihenfolge korrigiert: Klippen → Wald → Wasser → Areas
  (Wald war über Wasser, sollte darunter liegen)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-03 18:20:43 +02:00
8d6da6b013 Weltkarte Klippen: Schraffierung nur im Kliff-Band via Winding-Korrektur
- fixWindingForClip(): äußere Pfade CCW, innere Pfade (Löcher/Berg-Inneres) CW
  → gc.clip() füllt mit Non-Zero-Rule nur das echte Kliff-Band, nicht den
  gesamten eingeschlossenen Bereich inkl. Berggipfel
- Schraffierungs-Liniendicke = overlayLineWidth() (identisch zu Konturlinie)
- Schraffierungs-Abstand = 4× Liniendicke → konstante ~25% Flächendeckung
  über alle Zoom-Stufen

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-03 18:06:30 +02:00
972d5d6e0b Weltkarte Klippen: Schraffierung, Zoom-abhängige Linienstärke, Wald-Stil
- Kliff-Bereiche: diagonale Schraffierung (45°, ~5.5px Abstand) im gleichen
  Grauton via gc.clip() auf die Marching-Squares-Pfade
- Klippen- und Wald-Konturlinien: 1.2px bei Zoom 0-2, 2.5px bei Zoom 3,
  3.5px bei Zoom 4 (deutlich dicker zum Reinzoomen)
- Wald-Umrandung: selber Stil und Dicke wie Klippen, aber dunkelgrün (28/78/12)
- Render-Reihenfolge bleibt: Klippen → Wasser → Wald

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-03 17:47:19 +02:00
81c9512244 Weltkarte: Vektor-Konturen für Wald/Klippen, 8m Textur-Filter, Render-Reihenfolge
- Cliff- und Wald-Randlinien via Marching Squares + Chaikin als Canvas-Vektoren
  statt Pixel-Kanten im Raster → immer scharf wie Küstenlinie und Areas
- COARSE von 512px (4m/px) auf 256px (8m/px) erhöht + Bilinear-Interpolation
  der Flachfarben → dünne Texturen (<8m) verschwinden, keine Block-Artefakte
  bei Hires-Zoom
- Render-Reihenfolge: Klippen → Wasser → Wald (laut User-Anforderung)
- buildCliffOverlay: nur noch weiche Grau-Füllung, keine pixel-basierten Kanten
- computeForestPixels: nur noch Füllung, Randlinie kommt als Vektor-Overlay

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-03 17:18:43 +02:00
ddec931ee8 Weltkarte: schematische 5-Layer-Optik
Layer 1: Flachfarben aus Splatmap (Coarse 512px filtert dünne Texturen <4m heraus, kein Hillshading)
Layer 2: Wasser-Füllung (PNG) + Küstenlinie (Canvas-Vektor), eine Checkbox
Layer 3: Wald – 50% alpha grün + dunkelgrüne Randlinie (vorgebacken)
Layer 4: Klippen – graue Füllung + Kammlinie + Fußlinie (vorgebacken, buildCliffOverlay)
Layer 5: Areas – gestrichelte Vektorpolygone (Canvas)

Entfernt: Wellenmarken, Wasserfall-Symbole, Zonen, Modell-Punkte, Orte-Labels, Baum-Symbole

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-03 16:32:18 +02:00
e8896c7a4d Weltkarte: Anpassungen vor schematischem Umbau
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-03 16:22:13 +02:00
abf56f81b6 Weltkarte: tile-basiertes Rendering, Hires-Chunks, 5 Zoom-Stufen
- Durchschnittliche Kachel-Farben (terrainColorMap, 2048px) als Basis für Low-Res-Ansicht
- Bilineares Splatmap-Blending (blendTileAvgColors) statt Nearest-Neighbor
- Chunk-basierte Hires-Karte (8192px, 256 Chunks à 512px) auf Disk gecacht
- Zoom-Stufen 0–2: Overview-Bild; Stufen 3–4: Hires-Chunks per LRU-Cache
- 5 geometrisch verteilte Zoom-Stufen (Fit-All bis 0,25m/Pixel)
- Klippen-Erkennung per Steigungswinkel (1,5m Sampling-Distanz, harter 30°-Schwellwert)
- Leichter Box-Blur (Radius 2) über Terrain-Layer
- Wasserfarbe in Hires-Chunks vereinheitlicht (WATER_COLOR)
- Kein Hillshading

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-03 10:39:23 +02:00
2fd6a9b737 Weltkarte: Kachel-Overlay, Wald-Overlay, ModelCategory-System, Selektions-Fix
- Terrain-Textur-Overlay (Splatmap-Blend, Klippen, Wald) als Dirty-Flag-Cache
- Wald wird nach Wasser gerendert, 50% Deckkraft, Schwelle 3+ Bäume
- Speichern vor Weltkarten-Refresh (save-then-load via pendingAfterSave)
- ModelCategory-System: Baum/Palme/Busch/Gebäude; Ordner-Kategorie im UI versteckt
- Selektion nur mit Auswahl-Werkzeug (kein versehentliches Selektieren im Platzier-Modus)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-01 22:05:38 +02:00
0fc8f7f3c3 Arbeiten an der Karte - neuer Render Modus mit Zwischenschicht, Küstenlinien, Wasserfälle 2026-08-29 22:27:57 +02:00
36c6a9b7d8 Weltkarte: Render-Modell-Trennung, UI-Umbau und Kamera-Indikator
- WorldMapRenderModel: neues Record als Zwischenschicht zwischen I/O und Rendering
- WorldMapRenderer: render() akzeptiert Modell direkt; rückwärtskompatible Wrapper-Signatur für MinimapState
- WorldMapView: Layer-Auswahl als MenuButton mit Checkboxen; Vollbild-Modus (centerStack-Swap); Kamera-Indikator mit FOV-Kegel (120ms-Timer, unabhängig vom Karten-Rendering); Linksklick teleportiert JME3-Kamera unter Beibehaltung der Terrain-Höhendifferenz
- EditorApp: CameraInfoSupplier, TeleportCallback und FullscreenCallbacks verdrahtet
- MinimapState, Logback: Debug-Logging für Modell-Build und Render-Zyklen
- Map-Daten: Zwischenstand Weltdaten

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-08-28 13:24:35 +02:00
68ec75c41a Voxel-Backen: Tunnel- und Höhlen-Support
Tunnel-Spalten werden im Gradientenschreiben jetzt vollständig geschützt:
Pre-Scan erkennt echte Tunnel (void ≥ Terrain-Höhe mit festem Voxel darüber)
und überspringt dann sämtliche negativen Zellen in dieser Spalte – auch
unter-terrain-liegende. Damit erzeugt MC keinen Plateau-Boden mehr am
Tunnel-Eingang.

Terrain-Übergang-Extrapolation bekommt zusätzlich einen hasVoidBelow-Check:
existieren leere Zellen unterhalb von yBot im geblurrten Chunk, wird die
Extrapolation übersprungen, statt den Hohlraum zuzuschütten.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-08-28 11:59:52 +02:00
f8dbbb09c7 Zwischenstand Minimap 2026-08-24 20:39:22 +02:00
9238378bc8 Minimap und ingame Karte - umsetzung begonnen 2026-08-23 22:13:32 +02:00
46b504e050 Weiter an den Baum Systemen gearbeitet 2026-08-23 17:21:21 +02:00
d65ebbfeb6 Neuer Baum Generator für Trauerweiden 2026-08-23 10:48:25 +02:00
fdd8eb60be Lokalisierungseditor wieder in den Editor integriert und Fehler behoben, Funktionsumfang ergänzt 2026-08-22 21:39:13 +02:00
d0f33a5b4b Anzeige von Area und Location Namen korrigiert 2026-08-22 21:18:53 +02:00
756304f621 Anzeige von Areas aktualisiert 2026-08-22 20:36:44 +02:00
e4a41d1a0a Wasser-Sounds verfeinert 2026-08-22 20:16:48 +02:00
95552196b0 Wasserfälle weiter verveinert 2026-08-22 13:16:40 +02:00
6ee404fc2c Wasserfall System eingebaut 2026-08-22 11:37:51 +02:00
08e1df06d4 Gras (Textur) Pinsel Bugs behoben 2026-08-21 15:47:31 +02:00
03dcfb4187 Malen von Gras erweitert 2026-08-21 15:03:23 +02:00
5d8e4db468 Bugs bezüglich Footssteps und Animationen behoben 2026-08-21 08:07:10 +02:00
024a7ffaff Texturierung von Voxel Terrain angepasst 2026-08-20 16:10:06 +02:00
919ef98137 Einige Bugs was Platzieren und Interagieren mit Interactables belangt, behoben 2026-08-20 15:50:50 +02:00
f3b10586ad Animationen ingame und im editor angepasst 2026-08-20 15:30:03 +02:00
1df03e759f Animationsübergänge weiter verbessert 2026-08-20 08:27:39 +02:00
974ee5765e Ein wenig an der GUI gebastetl 2026-08-19 22:21:32 +02:00
c221c26a23 Weiter Ingame an den animationen gepfeilt 2026-08-19 19:37:59 +02:00
ec0865d09b Umbau der Animations Editor Geschichte 2026-08-19 17:40:16 +02:00
4ed0023a5c Zwischenstand commited 2026-08-19 07:40:30 +02:00
c09502ad3a Menü Buttons angepasst, Screenshot Funktion optimiert 2026-08-17 12:41:21 +02:00
ee8c235655 Fehler beim ERstellen von Voxel auf Meereshöhe behoben 2026-08-17 11:26:19 +02:00
c9ab15bda5 Fehler bei den Höhlen behoben 2026-08-16 22:54:22 +02:00
13a1c45ca6 Mehrere Probleme behoben 2026-08-16 21:48:19 +02:00
225d9cfa82 Fehler beim Selection Tool behoben 2026-08-16 13:31:15 +02:00
77cb58be6d An der Texturierung der Welt gearbeitet 2026-08-16 10:25:02 +02:00
e79f5b4755 Einige Bug Fixes 2026-08-16 09:28:55 +02:00
47b2d43c50 Noch einiges aufgeräumt 2026-08-15 00:21:41 +02:00
9807a958f4 Einige Bug Fixes (Camera, Thumbnails), Terrain 2026-08-15 00:11:29 +02:00
f2944c9a91 Umbau und Konsolidierung der Tools und der Oberfläche abgeschlossen 2026-08-14 21:37:57 +02:00
90599c9c7b Tool und Oberflächen Konsolidierung angefangen 2026-08-14 15:41:27 +02:00
400a736804 Weitere Anpassungen bezüglich der Voxel und des Zoning Systems 2026-08-12 23:01:09 +02:00
ae3caacebf Weiter Fixes 2026-08-10 20:06:25 +02:00
145db8317f Weitere Bugfixes und kleine Feature Erweiterungen 2026-08-10 19:41:32 +02:00
753af2dc13 Platzierung und Bearbeitung von OPbjekten angepasst 2026-08-10 14:41:44 +02:00
294a080a3c Bug behoben bei den Texturen 2026-08-10 12:33:10 +02:00
9561966071 Spawn Punkte korrigiert 2026-08-10 11:51:42 +02:00