Westpodest, Osttreppe, Gartenschrank, Start in der Uebersicht
Deploy App / deploy (push) Successful in 27s

- Weg um das Haus: der westliche Arm fehlte. Vor dem Gartentor liegt
  jetzt ein Podest auf -0.14 (Plan: dreimal -0.14 bis zur Suedwestecke),
  das an der Ecke in den Weg entlang der Suedgrenze uebergeht. Gegen die
  tiefer liegende Feuerwehrzufahrt schliesst ein Betonabschluss ab.
- Westtreppe gedreht: die Trittlinien liegen im Plan parallel zur Rinne,
  die Treppe laeuft also laengs der Grenze nach Norden, vom Podest auf die
  Feuerwehrzufahrt (-0.14 auf -1.08). Die Zufahrt ist dort ausgespart.
- Osttreppe war unter Rasen verschwunden. Unter Treppen wird das Gelaende
  jetzt unter die unterste Trittkante gelegt; die Treppe reicht vom
  Gelaender bis an die Winkelelemente. Der Belagstreifen, der sie
  zugedeckt hatte, ist weg.
- Belaege und feste Ebenen legen das Gelaende auch ausserhalb der Zonen
  fest. Vorher stand am Fuss der Osttreppe ein Grashuegel ueber dem
  Podest. Podest und Stellplatte liegen gemeinsam auf -1.57.
- Gartenschrank um 90 Grad gedreht: Rueckwand zum Beerenbeet, Doppeltueren
  zum Hauszugang. Dunkler gebeizt, damit er nicht mit der Fassade
  verschmilzt.
- Schwebender Travertinblock an der Nordwestecke entfernt.
- Die App oeffnet im Uebersichtsmodus.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-13 09:21:46 +02:00
co-authored by Claude Opus 5
parent fefa8e8c9a
commit 866bedf64d
5 changed files with 84 additions and 37 deletions
+2
View File
@@ -234,6 +234,8 @@ async function main() {
onJoystick: (x, y, active) => walker.setJoystick(x, y, active),
});
walker.onPointerLockChange = (locked) => hud.setPointerLocked(locked);
// Die App oeffnet in der Uebersicht; der Rundgang ist einen Klick entfernt.
hud.setMode('overview');
// -- Renderschleife ------------------------------------------------------
function resize() {
+2 -1
View File
@@ -88,7 +88,8 @@ function schwebendeStufe(p: Prop, y: number): Group {
*/
function gartenhaus(p: Prop, y: number): Group {
const g = new Group();
const holz = material(tex.fassadeHolz(), { roughness: 0.8 });
// Dunkler gebeizt als die Fassade, damit der Schrank nicht mit dem Haus verschmilzt.
const holz = material(tex.fassadeHolz(), { color: 0x857868, roughness: 0.8 });
const dunkel = new MeshStandardMaterial({ color: 0x3b3934, roughness: 0.62 });
const metall = new MeshStandardMaterial({ color: 0x55565a, roughness: 0.45, metalness: 0.6 });
const a = (p.rot * Math.PI) / 180;