mapspinner 0.1.10 → 0.1.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/planet-orchestrator.js +1 -1
- package/src/quadtree.js +3 -2
package/package.json
CHANGED
|
@@ -497,7 +497,7 @@ export async function initMapspinnerPlanet(gl, opts = {}) {
|
|
|
497
497
|
// ONLY to splitDist (NOT distF below): distF = sf*8.0 is the altitude-weighting term, and scaling sf
|
|
498
498
|
// into BOTH compounds into ~2 levels at altitude (witnessed: base sf*2 gave mx 5->7 at 8000km). Keep
|
|
499
499
|
// distF on the original sf so the push is a clean ONE step. maxLevel (16) is untouched -- no new LOD.
|
|
500
|
-
const LOD_STEP =
|
|
500
|
+
const LOD_STEP = 4.0; // push ALL LODs out ANOTHER step (user 2026-06-09 #2, after the 1.0->2.0 first step):
|
|
501
501
|
qt.computeSplitDist(sf * LOD_STEP, gl.drawingBufferHeight || 480, fovy);
|
|
502
502
|
// DETAIL-FARTHER (user 2026-06-01h: each LOD pop should happen ~3x farther out -- 6km detail at
|
|
503
503
|
// 24km, etc.). A quad subdivides when camAlt < l * splitDist * distFactor, so tripling distFactor
|
package/src/quadtree.js
CHANGED
|
@@ -91,7 +91,7 @@ export class Quadtree {
|
|
|
91
91
|
// 20km). Shrinking the penalty-free near radius lets the far-LOD falloff coarsen MORE of the
|
|
92
92
|
// off-screen / past-horizon field, cutting peak visible leaves toward ~600-900 (precondition
|
|
93
93
|
// for the 512 layer cap). These are THE only values -- no device tier.
|
|
94
|
-
const near = Math.max(this._camAlt *
|
|
94
|
+
const near = Math.max(this._camAlt * 4.0, horizon * 0.5, 20000.0);
|
|
95
95
|
// floor 0.5 (was 0.18): past the horizon the split may HALVE, not crush to ~1/5 (which was
|
|
96
96
|
// collapsing near-field detail on descent). Foreground (latC<near) stays fall=1 -> full LOD.
|
|
97
97
|
const fall = 1.0 / (1.0 + Math.max(0.0, latC - near) / near);
|
|
@@ -104,7 +104,8 @@ export class Quadtree {
|
|
|
104
104
|
// stays sharp (floor 0.5) so the deck keeps its near-field detail. fpsAltM live via this.fpsAltM.
|
|
105
105
|
const fpsAltM = this.fpsAltM || 5000.0;
|
|
106
106
|
const aboveFps = Math.min(1.0, Math.max(0.0, (this._camAlt - fpsAltM) / (fpsAltM * 8.0))); // 0 at fps height -> 1 by ~45km
|
|
107
|
-
const
|
|
107
|
+
const maxFloor = 0.7;
|
|
108
|
+
const floor = 0.25 + (maxFloor - 0.25) * (aboveFps * aboveFps * (3 - 2 * aboveFps)); // 0.25 deck -> 0.7 high alt, always some far coarsening
|
|
108
109
|
const effSplit = this.splitDist * Math.max(floor, fall);
|
|
109
110
|
if (dist < l * effSplit && level < this.maxLevel) {
|
|
110
111
|
const hl = l / 2.0;
|