Skip to content

Fog: Fog of Knowledge: The Game — 3D open world (new page + one header link) — DO NOT MERGE yet - #129

Open
mikecreation wants to merge 12 commits into
mainfrom
nemesis/fog-game-v1
Open

mikecreation wants to merge 12 commits into
mainfrom
nemesis/fog-game-v1

Conversation

@mikecreation

@mikecreation mikecreation commented Oct 20, 2026 •

Copy link
Copy Markdown
Owner

Fog of Knowledge: The Game (v3, graphics overhaul). DO NOT MERGE yet

This adds a new page, research/fog-of-knowledge/game/, with a real-time 3D open world: a human explorer, real physics, and discoveries that clear the atlas fog. The only other change is one header link in research/fog-of-knowledge/index.html.

Play (Nemesis): http://127.0.0.1:8000/fog-of-knowledge/aa84436da26f2d882e1886cd729930788771ee40/game/index.html

v3: graphics overhaul (commit aa84436)

  • Character: a rigged, animated CC0 human (Quaternius Universal Animation Library) loaded with GLTFLoader and AnimationMixer.
    • 14 clips: idle, walk, jog, sprint, jump start/loop/land, swim, swim idle, throw, strike, pick-up, interact and death.
    • Clips blend by speed and state. Bind-pose zone colouring dresses the figure (boots, trousers, tunic, skin, hair).
  • Animals: smooth PBR procedural animals (no CC0 animal models were vendored).
  • Lighting:
    • ACES filmic tone mapping in sRGB with PBR materials.
    • A sun with soft PCF shadows that follow the player, a hemisphere light and a golden hour.
    • A blue moonlit night with stars.
    • Fires and kilns use flickering point lights (Ultra also gives the nearest fire a shadow).
  • Sky: a tuned Preetham Sky. Height and distance exponential fog blends into the sky horizon. A procedural cloud layer, a moon and stars. Rain and snow weather.
  • Water: the three.js Water addon (planar reflection and normal map) on High/Ultra. Animated shoreline foam, wet sand and an underwater tint and fog.
  • Terrain: smooth analytic normals, per-biome noise detail, rock on slopes, snow on peaks.
  • Vegetation:
    • Instanced, wind-swaying grass near the player.
    • Pine, broadleaf, palm and dead trees with leaf sway.
    • Bushes, flowers, boulders, stones and sticks.
  • Effects:
    • Fire, smoke and ember particles; flint and pyrite sparks; landing dust; water splashes.
    • Post-processing: UnrealBloom, then OutputPass, then FXAA (High) or SMAA (Ultra), then grade/vignette.
  • UI:
    • A title screen over an animated 3D flyover with a golden-hour time-lapse.
    • Glass HUD and a glowing discovery popup.
    • Settings (gear button / Esc) with Low, High and Ultra quality (saved in localStorage, default High), an fps counter and credits.

Verified (headless Edge on Michael's PC, GTX 1070, D3D11, 1920×1080, via the Nemesis URL above)

  • The page loads. The title screen shows. Play works. The human model loads and WASD/sprint/jump move the player about 15 m.
  • Building a campfire and striking flint triggers the Fire making discovery, and the popup shows.
  • The atlas page still shows 6,360, and the header link points to game/index.html.
  • The only console error is the favicon 404.
  • fps: Low 144 (vsync cap), High 125, Ultra 106. High at night with a burning fire runs at about 93.

Scope and safety

Served sha256 hashes at this commit match main (f188078) for:

  • the atlas data (atlas-navigation.json, atlas-display.json, atlas-families.json)
  • styles.css and app.js
  • circuit-routing.js, circuit-worker.js, circuit-painter.js and massive-atlas.js

git diff --stat main -- research/fog-of-knowledge ':!research/fog-of-knowledge/game' shows only index.html, with a 1-line change.

No arena.db, no CODEX_NODE_EXPANSION, no PR #108.

Assets and licences

  • three.js r160 and these examples addons, vendored and imports rewritten to the local module: Sky, Water, GLTFLoader, BufferGeometryUtils, SkeletonUtils, EffectComposer and its passes, UnrealBloom, OutputPass, FXAA/SMAA and waternormals.jpg. All MIT; see vendor/LICENSE-three.txt.
  • Quaternius Universal Animation Library mannequin: CC0, by Quaternius, via the github.com/J-Ponzo/gltf-universal-animation-library mirror.
    • Trimmed to 14 clips and stored as assets/human.gltf.json with an embedded buffer, because Nemesis does not serve .glb/.gltf.
    • See assets/LICENSE-Quaternius-UAL-CC0.txt and assets/CREDITS.txt.
  • Everything else (terrain, plants, animals, clouds, particles) is procedural code.

Rough edges and known limits

  • No fish. No SSAO.
  • Animals are procedural, not rigged.
  • Clouds are a single layer.
  • Shadow casters don't sway with the wind.
  • The first load fetches about 2.7 MB for the human model.

New read-only game under research/fog-of-knowledge/game/ (civilization survival mode, fog explorer, daily expedition) built over data/atlas-navigation.json + atlas-display.json + atlas-families.json. Only existing-file change: one <a> link inserted in index.html's atlasTabs. Renderer, layout, loading code and atlas data untouched.
… MIT)

Open-world survival with simulated physics; discoveries reveal real atlas nodes. Explorer and Daily modes kept as secondary tabs; civ mode removed. No renderer, atlas data or styles.css changes.
@mikecreation mikecreation changed the title Fog: Fog of Knowledge: The Game (new page + one header link) — DO NOT MERGE yet Fog: Fog of Knowledge: The Game — 3D open world (new page + one header link) — DO NOT MERGE yet Oct 20, 2026
…d CC0 human, particles, post, quality settings)

Only files under research/fog-of-knowledge/game/ change. Adds three.js r160 addons (MIT) and Quaternius UAL human (CC0) with credits.
…og, needy pets, observe mode, big inventory with two hands and context menus, physically-scaled fire light and dark nights, procedural audio, base building, weather/threats, bot + 213 tests)
…imals steer around water instead of stalling at the shore; aimed lightning can ignite the tree; robust wolf tests
…ies; setbacks, wash-ashore, shivering slows), cooking branch (Maillard, caramel, baking, stew, fermentation, chef) + Cookbook tab, dusk fire-first priority, Classic survival toggle, tests
…6 min night; Long/Normal/Short setting), Calm weather default (sunny first 3 days and until first fire, rare short showers, no storms/lightning; Natural option), old night/rainy saves migrate to a clear morning; tests
… projectiles instead of hunting, meat optional, berry drying, Backpack UX (R/Shift+R stow, pickup toasts), pets visible at start and sleeping by the fire, fire heat scales with size, pendulum test fix
…H / ? button / Settings), just-in-time basics tips with a settings toggle, physics readout moved to G, tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant