adityanandanx / adityanandanx/nightcall

Build: production terrain engine from the LOD prototype

Abierto
#7 0 comentarios 0 reacciones 0 asignados Ver en GitHub
wayfinder:task
Lenguaje dominante
Sin datos de lenguaje
Estrellas
0
Forks
0
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Part of #1

## Question

Take the validated prototype branch `prototype/lod-quadtree` (ticket #6, commit 4dafb65 — quad-locked SSE quadtree + LRU TileCache + skirt crack-mitigation) and turn it into the production terrain engine: fully crack-free LOD transitions, streaming performance, and a clean module split ready for the physics map.

## Scope

- **Crack-free seam upgrade:** replace skirt-only mitigation with **edge-matched child-from-parent upsampling** (per research #4: Navara `upsample/mod.rs` / Cesium child-from-parent) so a child tile reuses its parent's exact boundary vertices — cracks eliminated at LOD transitions, not hidden. Keep skirts as the eviction-time gap layer.
- **Horizon occlusion gate** (research #4: `EllipsoidalOccluder`) so we stop streaming tiles around the far side of the globe; add frustum culling.
- **Decode on a Worker** (research #4: Navara worker split) so big tile fetches don't jank the render thread; transfer typed arrays.
- **Geometry pooling + eviction GC:** dispose GPU buffers on cache eviction (already signaled via `onEvict`), keep byte budget bounded while orbiting fast.
- **Module split finalized** per research #4: `decode/` `tile-cache/` `lod-selector/` `geometry-builder/` (RTC) `threeLayer/` — matching what the physics map (react-three-rapier colliders from own triangles) will consume.
- Keep RTC-center geometry (float64/float precision at globe scale).

## Deliverable

A branch off `prototype/lod-quadtree` with the engine refactor; zoom orbit from space to ~1 km altitude stays smooth (no jank, bounded cache, crack-free seams), verified in-browser. This is the base the physics map builds on.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.