adityanandanx / adityanandanx/nightcall
Build: production terrain engine from the LOD prototype
- 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.