Sly-Wunsch 17.10.: "die Dauersicht stört" — die Konturen sind genial, aber nur im Terrain-Werkzeug (F1) gewünscht. Kopplung am Werkzeug-Wechselpunkt: _set_tool_mode, _after_structure_change und _recheck_terrain_mode eichen die Konturen NACH (effektiv = Nutzer-Fix ODER Terrain-Werkzeug). Kein _process-Poll — die Umschaltung passiert synchron im selben Aufruf, hart ohne Fade (billig und deterministisch). NEU: Taste L (Action editor_contours_toggle; L war sonst unbesetzt — Kollisions-Prüfung im Test) und der Button „≈ Höhenlinien" fixieren die Linien als NUTZER-Wahl dauerhaft in jedem Werkzeug. Default = Fix AUS, Linien erscheinen also nur bei F1. Regression aus dem Fundus gefixt: _after_structure_change baute terrain_view neu OHNE Kontur-Nacheich (das Gitter hatte ihn, die Linien nicht) — nach jedem Strg+Z kehrte die Dauersicht zurück. Der Rebuild bekommt jetzt denselben Nacheich wie das Gitter. Das Relief-Shading (Hillshade + Höhen-Kurve) bleibt davon unberührt und immer an. Auf flachen Maps (< 2 m Relief) schaltet der Shader weiter selbst auf aus. Doku: docs/tasten.md (L-Zeile in Werkzeuge + Kopplungs-Absatz) und H-Overlay-Zeile (help_text.gd). Tests: test_shortcuts +5 Checks (Action registriert, physische Taste L, Kollisions-Freiheit, L ≠ F1/H). test_gui_smoke +21 Checks am ECHTEN main: Start AUS · Undo/Rebuild bleibt AUS (Root-Cause-Regression) · F1 ein → F2/F3/F4 aus (synchron, 0 Frames Poll) · L-Fix an/aus inkl. Button-Sync und Statusmeldungen · Button-Weg ditto. Suite 11/11 ALL OK: ux 137, shortcuts 203, editor_svmap 31, terrain 112, library 94, glb_view 28, spawns 52, testrun 14, bauen 87, gui_smoke 89, rmb_vorrang 32.
8.6 KiB
Tastatur & Maus — Map-Editor
Deutsche Tastenbelegung des ScopedVR Map-Editors. Diese Datei ist die Source
of truth für alle Shortcut-Karten — FINALE Version nach allen drei Karten:
Karte 1/3 (t_c46d31c2): Navigation, Auswahl, Löschen · Karte 2/3 (t_55257792):
Objektmanipulation + Terrain · Karte 3/3 (t_11b5c25b): Datei & Undo,
Werkzeugwechsel, Hilfe, Test. Das Kurzhilfe-Overlay im Editor (Taste H)
zeigt dieselbe Tabelle (Quelle: src/ui/help_text.gd).
Konventionen (alle Karten):
- Tastaturcode-basiert: InputMap-Actions mit physischen
KEY_*-Konstanten (src/editor/shortcut_keys.gd). Die physische Taste liegt unabhängig vom Tastaturlayout gleich — deutsches (QWERTZ) und Windows-Layout verhalten sich identisch, keine OS-Hardcodes (PLAN.md Plattform-Regel). - Jede Objekt-Operation = EIN ActionHistory-Eintrag (Strg+Z nimmt die ganze Operation zurück). Ausnahme: reine Kamera-Aktionen (Orbit/Flug/Zoom) betreffen die Map nicht und sind nicht in der Historie.
- Strg halten = temporärer Snap-Zwang (Karte 2/3): egal was der Raster-Snap-Schalter sagt — solange Strg unten ist, rastet Bewegen (Ziehen/Greifen) und Platzieren auf ganze Meter.
Navigation (Kamera)
| Eingabe | Wirkung |
|---|---|
| Mittlere Maustaste ziehen | Orbit: Um die Karte drehen |
| Mittlere Maustaste + Umschalt ziehen | Pan: Karte verschieben |
| Mausrad | Zoom (aus, wenn Mausrad gerade ein Objekt dreht) |
| Rechte Maustaste GEDACHT halten | Freelook-Flug: Umsehen + W vor / S zurück / A links / D rechts; Leertaste hoch / Umschalt runter (Shooter-Konvention wie Half-Life/Counter-Strike — Sly-Wunsch 17.10.). Funktioniert in JEDEM Werkzeug (Terrain, Bauen, Spawn-Zonen, Platzieren) — die rechte Maustaste hat ABSOLUTEN Vorrang, kein Werkzeug belegt sie (Karte t_2470de89) |
| Strg halten (im Flug) | schneller fliegen (×3) — temporär, Godot-üblich |
| Alt halten (im Flug) | langsamer fliegen (×0,3) |
| Mausrad (im Flug) | Grundgeschwindigkeit dauerhaft ändern (2–300 m/s) |
| Umschalt+F | Freelook-Flug dauerhaft an/aus (Flug bleibt ohne gedrückte rechte Maustaste aktiv) |
| F | Auswahl ins Bild zentrieren (Focus Selection) |
Der Orbit-Modus ist der Default: Beim Verlassen des Flugs springt die Kamera nicht — Ziel/Winkel/Abstand werden aus der Flugposition zurückgerechnet.
Auswahl
| Eingabe | Wirkung |
|---|---|
| Linksklick | Objekt auswählen (ersetzt die Auswahl) |
| Strg+Klick (Viewport und Objektbaum) | Objekt zur Auswahl hinzufügen/entfernen (Mehrfachauswahl) |
| Umschalt+Klick | wie Strg+Klick (Mehrfachauswahl umschalten) |
| Ziehen über leeren Boden | Rahmen-Aufziehen: alle Objekte im Rahmen wählen |
| Umschalt + Rahmen | Rahmen-Auswahl zur bestehenden Auswahl hinzufügen |
| Esc | Werkzeug abbrechen → Greifen zurückrollen → Ghost-Preview abbrechen → Auswahl aufheben (Prioritätskette) |
Alle Bestandsaktionen wirken auf die GANZE Mehrfachauswahl: Entf löscht alle, Strg+D dupliziert alle, Ziehen verschiebt gemeinsam, Anheben/Absenken hebt alle, Strg+G gruppieren / Strg+Umschalt+G lösen.
Objekt-Manipulation (Karte 2/3)
| Eingabe | Wirkung |
|---|---|
| R | Auswahl 90° drehen (Vierteldrehung; Umschalt+R = −90°). Szene-Objekte drehen um den Auswahl-Mittelpunkt, Bauen-Bauteile um ihren Fußpunkt. Ein Objekt aus einer Gruppe dreht die GANZE Gruppe. Dauerhaft (kein Vorschau-Zustand) |
| Mausrad (mit Auswahl) | Feindrehen im 15°-Raster (bleibt wie bisher) |
| Pfeiltasten | Auswahl im 2-m-Raster verschieben — EINE Zelle pro Tastendruck, Richtung = Kamera-Ausrichtung nächste Weltachse (Godot-Editor-Konvention: ↑ = von der Kamera weg). Fußpunkt bleibt am Raster, Höhe wandert mit |
| Bild↑ / Bild↓ | Auswahl +0,25 m / −0,25 m anheben/absenken (Mehrfachdruck = EIN Undo-Schritt) |
| Strg+Bild↑ | Auswahl direkt auf das Terrain/Boden absetzen (Godot „Snap Object to Floor“-Äquivalent fürs Fußpunkt-Modell) |
| G | Auswahl greifen (Blender-Semantik): sie hängt an der Maus, Linksklick setzt die neue Position (mit Raster-Snap bzw. Strg-Zwang), Esc bricht ab und setzt die exakten alten Positionen zurück. Greifen der ganzen Gruppe/mehreren Objekte wandert gemeinsam |
| Entf (DELETE) | Auswahl SOFORT löschen, ohne Rückfrage — Strg+Z holt alles zurück. Wirkt auf Szene-Auswahl UND Objektbaum-Markierung |
| Strg+D | Auswahl duplizieren: Kopie +2 m in X versetzt (Rasterversatz), Füßpunkt unverändert; bei Mehrfachauswahl ALLE Objekte mit EINEM Undo-Schritt |
| Strg+G / Strg+Umschalt+G | Auswahl gruppieren / Gruppe lösen |
Datei & Undo (Karte 3/3)
Vor „Neue Map“ und „Öffnen“ fragt der Editor NACH, wenn die Map noch ungespeicherte Änderungen hat (deutscher Dialog „Verwerfen / Abbrechen“) — nichts geht versehentlich verloren.
| Eingabe | Wirkung |
|---|---|
| Strg+Z | Rückgängig (EIN Eintrag pro Operation) |
| Strg+Y UND Strg+Umschalt+Z | Wiederherstellen (Redo) — beide Wege sind belegt |
| Strg+S | Map speichern (.svmap, bekannter Pfad; noch nie gespeichert → „Speichern unter“) |
| Strg+Umschalt+S | Map speichern unter … |
| Strg+O | Map öffnen |
| Strg+N | Neue Map |
Terrain-Werkzeug (Karte 2/3) — nur aktiv, wenn das Terrain-Werkzeug an ist
| Eingabe | Wirkung |
|---|---|
| [ | Pinselgröße verkleinern — durch die 3 Presets Klein (4 m) / Mittel (12 m) / Groß (32 m) zyklisch; Preset-Buttons, Slider und Label wandern mit |
| ] | Pinselgröße vergrößern (gleicher Zyklus, andere Richtung) |
| 1 | Pinselmodus Heben |
| 2 | Pinselmodus Senken |
| 3 | Pinselmodus Glätten |
| 4 | Pinselmodus Malen (mit der zuletzt gewählten Materialfarbe) |
| Linksklick-Ziehen | Boden formen bzw. malen (je nach Pinselmodus) |
| Strg + Linksklick-Ziehen | Gegenteil: bei Heben senkt er, bei Senken hebt er (Invert-Konvention wie Blender/Photoshop); im Malen-Modus malt Strg+Klick Gras zurück |
| Rechte Maustaste | Kein Terrain-Strich mehr — gehört dem Freelook-Flug (absoluter Vorrang, siehe Navigation) |
| Strg halten | temporärer Snap-Zwang beim Objekt-Bewegen/Platzieren (gilt editorweit, nicht nur hier) |
Konfliktfreiheit: Die Ziffern 1–4 sind NUR im Terrain-Werkzeug belegt — im Objekt-/Bauen-Modus sind sie unbenutzt, im Flugmodus (rechte Maustaste gehalten) bleiben Leertaste/Shift/Strg die Kamera. Leertaste, Umschalt und Strg triggern im Flug KEINE Werkzeug-Aktion: Terrain senkt nur bei Strg+gedrücktem Linksklick (nicht bei Strg allein), Entf/Strg+Z & Co. bleiben unangetastet, und der Flug-Einstieg gibt den GUI-Fokus frei, damit Leertaste keinen fokussierten Button auslöst.
Werkzeuge (Karte 3/3: F-Tasten wechseln das Werkzeug)
| Eingabe | Wirkung |
|---|---|
| F1 | Werkzeug: Terrain formen |
| F2 | Werkzeug: Objekte platzieren/auswählen (Standard) |
| F3 | Werkzeug: Bauen (Häuser) |
| F4 | Werkzeug: Spawn-Zonen malen |
| Esc (im Terrain-/Spawn-/Bauen-Werkzeug) | Werkzeug beenden — zurück zum Objekt-Werkzeug |
| Esc (beim Greifen) | Greifen abbrechen, alte Positionen zurück |
| Esc (beim Platzieren) | Ghost-Preview abbrechen |
| Esc (Kurzhilfe offen) | Kurzhilfe schließen |
| L | Höhenlinien fixieren (Karte t_89c0ec95): Linien immer sichtbar/unsichtbar — unabhängig vom Werkzeug. Ohne Fix erscheinen sie NUR im Terrain-Werkzeug (F1) |
F1–F4 und F5/H/L wirken NUR, wenn kein Textfeld/SpinBox fokussiert ist und kein Dialog offen ist (ShortcutPolicy) — Tippen geht immer vor.
Die Terrain-Ziffern 1–4 und [ / ] bleiben (Karte 2/3) NUR im Terrain-Werkzeug belegt — der Werkzeugwechsel läuft jetzt über die F-Tasten, nicht über Ziffern.
Höhenlinien-Kopplung (Karte t_89c0ec95): Die Konturen (1 m, alle 5 m kräftiger) sind Werkzeug-gekoppelt — F1 (Terrain) blendet sie ein, jeder andere Werkzeugwechsel blendet sie aus (hart, ohne Fade). Wer sie dauerhaft will, fixiert sie mit L oder dem Button „≈ Höhenlinien“ oben. Das Relief-Shading (Hillshade + Höhen-Kurve) bleibt davon unberührt und immer an. Auf flachen Maps (< 2 m Gesamtrelief) sind die Linien automatisch aus. L ist sonst unbesetzt (Kollisions-Prüfung t_89c0ec95).
Hilfe & Test (Karte 3/3)
| Eingabe | Wirkung |
|---|---|
| H | Kurzhilfe-Overlay an/aus — alle Tasten dieser Datei als Panel über der Karte; Esc schließt ebenfalls. Nicht-blockierend: der Editor bleibt bedienbar |
| F5 | ▶ Karte testen (aktuelle Map sofort als Spiel durchlaufen; der Editor bleibt offen) |
Die Statuszeile unten zeigt PERMANENT das aktive Werkzeug („Werkzeug: …“) plus den Hinweis „Umschalt+F = Flugmodus“ — man sieht immer, wo man ist.