minecraft-cloneandClaude 6e8e207afa feat: live settings panel (≈45 Werte, Live/Reload, Persistenz, AO live)
- panel.js: Drawer-Panel (P / ⚙), schema-getrieben, ●live/⟳reload-Badges
- Werte direkt im Panel einstellbar statt in config.js grabben
- Live-Apply über mutateNested (nur Plain-Objekte, nie Modul-Namespace)
  + registerApply-Callbacks für Three.js-Objekte (FOV, Belichtung, Fog, Licht, Schatten-Frustum, Bloom)
- PLAYER.*/CONTROLS.* live (player.js liest jeden Frame neu)
- AO jetzt live: debounced world.markAllDirty() remesht alle Chunks ohne F5
- Reload-Pflichtige Werte persistiert + blinkender Neu-Starten-Button
  (Seed, Meereshöhe, Spawn, MSAA, Tone-Mapping, Schatten an/Größe, AO-Level)
- Persistenz: localStorage (debounced), config.js lädt beim Start
- HUD/Overlay ausgeblendet, solange das Panel offen ist (Welt frei sichtbar)
- Buttons: Neu starten, Auf Standard zurücksetzen, Werte kopieren (JSON)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-21 16:31:25 +02:00
2026-06-21 01:14:00 +02:00
2026-06-21 00:50:45 +02:00

Minecraft Clone

Ein browserbasierter Voxel-Sandbox-Clone mit Three.js und prozeduraler Weltgenerierung. Ohne Build-Step – läuft direkt im Browser über CDN-Module.

🎮 Live-Demo: https://nockal.com/minecraft-clone

Screenshot

Starten

Einfach index.html über einen lokalen Webserver öffnen (ES-Module brauchen http://, kein file://):

cd minecraft-clone
python3 -m http.server 8080
# Browser: http://localhost:8080

Das Projekt liegt unter …/stacks/web/html/minecraft-clone und wird i. d. R. schon vom Web-Stack ausgeliefert.

Features

  • Weltgenerierung
    • FBM-Terrain (fraktaler Noise)
    • Biome: Plains, Wald, Wüste (über Temperatur-/Feuchtigkeit-Noise)
    • Höhlen über 3D-Noise
    • Wasser auf Meereshöhe
    • Bäume (Stamm + Blattkrone), chunk-übergreifend
  • Blöcke: Grass, Dirt, Stein, Sand, Holz, Blätter, Wasser, Bedrock
  • Abbauen (Linke Maustaste) und Setzen (Rechte Maustaste) per DDA-Voxel-Raycast
  • Streaming: Chunks werden um den Spieler dynamisch geladen/entfernt
  • First-Person-Steuerung mit Gravitation, Kollision, Springen, Fly-Modus & Schwimmen
  • Grafik: dynamische Schatten (PCF Soft), baked Vertex-Ambient-Occlusion (Smooth Lighting) und Post-Processing (Bloom + ACES Tone-Mapping / sRGB)

Anpassen

Alle Einstellungen – Render-Distanz, Grafik-Effects (Schatten/Bloom/AO), Beleuchtung, Spieler-Physik, Welt-Seed, Meereshöhe, Maus-Sensitivität u. a. – liegen zentral in js/config.js. Werte ändern, Seite neu laden, fertig.

Steuerung

Taste Aktion
WASD Laufen
Maus Umsehen
Leertaste Springen / im Wasser aufsteigen
Shift Sprinten / im Flug nach unten
Linke Maustaste Block abbauen
Rechte Maustaste Block setzen
1–6 Block in der Hotbar wählen
F Flug-Modus ein/aus
Esc Maus freigeben / Pause

Architektur

Datei Verantwortlichkeit
index.html / style.css Markup, UI (Overlay, Hotbar, Crosshair, HUD), Importmap
js/constants.js Block-/Biome-/Atlas-Konstanten, Tile-Mapping
js/config.js Zentrale Einstellungen (Grafik, Performance, Spieler, Welt)
js/rng.js Seeded PRNG (mulberry32) + Hashes
js/noise.js Noise-Funktionen (Terrain, Biome, Höhlen) + FBM
js/textures.js Prozeduraler 16×16-Texturatlas
js/worldgen.js Terrain, Biome, Höhlen, Wasser, Bäume
js/mesher.js Face-Culling-Meshing → opake + transparente Geometrie
js/world.js Chunk-Storage, Block-Zugriff, Streaming, Mesh-Verwaltung
js/player.js Bewegung, Gravitation, AABB-Kollision, Fly/Schwimmen
js/raycast.js DDA-Voxel-Raycast (Amanatides & Woo)
js/input.js Tastatur-/Maus-Input + Pointer-Lock
js/main.js Scene/Renderer/Licht, Game-Loop, Interaktion, HUD

bewusst weggelassen (Out of Scope)

Crafting, Gegner/NPCs, Erze.

S
Description
Procedural Minecraft clone — Three.js voxel engine
Readme
6.6 MiB
0 Stars 1 Watchers 0 Forks
Languages
JavaScript 87.8%
CSS 10.6%
HTML 1.6%