24 KiB
Earth Layer Style Property Index
This document records the material, color, opacity, line width, radius offset, and renderOrder style properties of all Earth frontend layers. For layer ordering relationships, see Earth Render Layer Order.
Naming Conventions
| Category | Convention | Example |
|---|---|---|
| Global config objects | *_CONFIG |
COUNTRY_BOUNDARY_CONFIG |
| Layer radius offsets | *AltitudeOffset / radiusOffset |
lineAltitudeOffset, GRID_CONFIG.radiusOffset |
| Opacity | *Opacity |
hoverLineOpacity |
| Render order | *RenderOrder |
textureOverlayRenderOrder |
| Color | *Color, hex number or CSS color value |
lineColor, colors.supercomputer |
| Line width | lineWidth / *LineWidth |
GRID_CONFIG.lineWidth |
Earth Base and HD Texture
| Name | Variable | Current Value | Location / Notes |
|---|---|---|---|
| Earth base radius | CONFIG.earthRadius |
100 |
earth.js:createEarth() |
| Earth base color | EARTH_MATERIAL_CONFIG.color |
0x010609 |
MeshPhongMaterial.color |
| Earth base emissive | EARTH_MATERIAL_CONFIG.emissive |
0x010609 |
MeshPhongMaterial.emissive |
| Earth base specular | EARTH_MATERIAL_CONFIG.specular |
0x1a2d45 |
MeshPhongMaterial.specular |
| Earth base shininess | EARTH_MATERIAL_CONFIG.shininess |
12 |
MeshPhongMaterial.shininess |
| Earth base opacity | EARTH_MATERIAL_CONFIG.opacity |
1 |
MeshPhongMaterial.opacity |
| HD texture radius offset | EARTH_MATERIAL_CONFIG.textureOverlayAltitudeOffset |
0.48 |
Standalone HD texture sphere radius; must keep enough depth separation from the land/ocean base and Earth base sphere to avoid far-zoom z-fighting |
| HD texture opacity | EARTH_MATERIAL_CONFIG.textureOverlayOpacity |
0.88 |
HD texture MeshPhongMaterial.opacity |
| HD texture renderOrder | EARTH_MATERIAL_CONFIG.textureOverlayRenderOrder |
0.96 |
_earthTextureOverlay.renderOrder |
| HD texture specular | EARTH_MATERIAL_CONFIG.textureOverlaySpecular |
0x05080d |
Reduces specular highlight in direct-light areas to avoid blown-out texture |
| HD texture shininess | EARTH_MATERIAL_CONFIG.textureOverlayShininess |
4 |
Reduces specular concentration |
| HD texture color multiplier | inline | 0xffffff |
_earthTextureOverlayMaterial.color |
Earth Occluder and Day/Night
| Name | Variable | Current Value | Location / Notes |
|---|---|---|---|
| Occluder radius factor | EARTH_MATERIAL_CONFIG.occluderRadiusFactor |
0.999 |
Depth occluder sphere radius |
| Occluder segments | EARTH_MATERIAL_CONFIG.occluderSegments |
48 |
Occluder geometry segments |
| Occluder renderOrder | inline | -1 |
occluder.renderOrder |
| Day/night sun direction | EARTH_MATERIAL_CONFIG.dayNight.sunDirection |
{ x: 1, y: 0.2, z: 0.4 } |
Custom day/night shader |
| Night-side minimum brightness | EARTH_MATERIAL_CONFIG.dayNight.nightFloor |
0.24 |
Shader uniform |
| Day-side boost | EARTH_MATERIAL_CONFIG.dayNight.dayBoost |
1.12 |
Shader uniform |
| Twilight width | EARTH_MATERIAL_CONFIG.dayNight.twilightWidth |
0.2 |
Shader uniform |
| Twilight intensity | EARTH_MATERIAL_CONFIG.dayNight.twilightIntensity |
0.14 |
Shader uniform |
| Twilight color | EARTH_MATERIAL_CONFIG.dayNight.twilightColor |
0x4ea0ff |
Shader uniform |
| Night tint color | EARTH_MATERIAL_CONFIG.dayNight.nightTintColor |
0x0b1830 |
Shader uniform |
| Night tint intensity | EARTH_MATERIAL_CONFIG.dayNight.nightTintIntensity |
0.08 |
Shader uniform |
Atmospheric Glow and Clouds
| Name | Variable | Current Value | Location / Notes |
|---|---|---|---|
| Inner atmosphere radius factor | EARTH_MATERIAL_CONFIG.atmosInnerRadiusFactor |
1.01 |
atmosInnerGeo |
| Inner atmosphere segments | EARTH_MATERIAL_CONFIG.atmosInnerSegments |
64 |
atmosInnerGeo |
| Inner atmosphere color | EARTH_MATERIAL_CONFIG.atmosInnerColor |
[0.25, 0.62, 1.0] |
Shader RGB |
| Inner atmosphere rim power | EARTH_MATERIAL_CONFIG.atmosInnerRimPower |
3.2 |
Shader rim falloff |
| Inner atmosphere intensity | EARTH_MATERIAL_CONFIG.atmosInnerIntensity |
0.18 |
Shader alpha multiplier |
| Outer atmosphere radius factor | EARTH_MATERIAL_CONFIG.atmosOuterRadiusFactor |
1.016 |
atmosOuterGeo |
| Outer atmosphere segments | EARTH_MATERIAL_CONFIG.atmosOuterSegments |
48 |
atmosOuterGeo |
| Outer atmosphere color | EARTH_MATERIAL_CONFIG.atmosOuterColor |
[0.18, 0.45, 0.9] |
Shader RGB |
| Outer atmosphere rim power | EARTH_MATERIAL_CONFIG.atmosOuterRimPower |
5.0 |
Shader rim falloff |
| Outer atmosphere intensity | EARTH_MATERIAL_CONFIG.atmosOuterIntensity |
0.02 |
Shader alpha multiplier |
| Atmosphere blending | inline | THREE.AdditiveBlending |
ShaderMaterial.blending |
| Atmosphere renderOrder | inline | 1 |
atmosInner/Outer.renderOrder |
| No-HD-texture rim glow color | EARTH_MATERIAL_CONFIG.rimGlowColor |
[0.35, 0.65, 1.0] |
Fresnel shell RGB when HD texture is hidden or unavailable |
| No-HD-texture rim glow power | EARTH_MATERIAL_CONFIG.rimGlowPower |
3.8 |
Shader rim falloff; higher = narrower edge |
| No-HD-texture rim glow intensity | EARTH_MATERIAL_CONFIG.rimGlowIntensity |
0.28 |
Shader alpha multiplier |
| No-HD-texture rim glow segments | EARTH_MATERIAL_CONFIG.rimGlowSegments |
64 |
earth-rim-glow geometry segments |
| Cloud layer radius offset | CLOUD_LAYER_CONFIG.radiusOffset |
3 |
Cloud sphere radius |
| Cloud layer segments | CLOUD_LAYER_CONFIG.widthSegments / heightSegments |
64 / 64 |
Cloud sphere geometry |
| Cloud layer opacity | CLOUD_LAYER_CONFIG.opacity |
0.15 |
MeshPhongMaterial.opacity |
| Cloud texture | CLOUD_LAYER_CONFIG.textureUrl |
"./assets/earth_clouds_1024.png" |
Cloud texture map |
| Cloud blending | inline | THREE.AdditiveBlending |
MeshPhongMaterial.blending |
Land/Ocean Base and Country Borders
The land/ocean base is an Earth base-map asset and preloads at startup; the "Border Lines" layer toggle only controls normal border lines, hover lines, and interactive hover.
| Name | Variable | Current Value | Location / Notes |
|---|---|---|---|
| Boundary tile manifest | COUNTRY_BOUNDARY_CONFIG.tileManifestPath |
"/earth/data/boundaries/v1/manifest.json" |
High-precision PMTiles manifest; missing manifest uses the low-precision fallback |
| Boundary tile provider | COUNTRY_BOUNDARY_CONFIG.tileProvider |
"auto" |
Prefer high-precision PMTiles/MVT, then fall back to legacy GeoJSON |
| PMTiles artifact path | COUNTRY_BOUNDARY_CONFIG.pmtilesPath |
"/earth/data/boundaries/earth-boundaries-china-pov-v1.pmtiles" |
Production single-file PMTiles/MVT artifact |
| Low-precision fallback | COUNTRY_BOUNDARY_CONFIG.legacyFallbackPath |
"/earth/data/countries-admin0.min.geojson" |
Default land/ocean base and hover data when no high-precision boundary asset has been built locally |
| MVT layer names | COUNTRY_BOUNDARY_CONFIG.mvtLayerNames |
boundary_admin0 / boundary_disputed_internal / coastline / claim_line |
Fixed layer names decoded by the PMTiles provider |
| Boundary tile base path | COUNTRY_BOUNDARY_CONFIG.tileBasePath |
"/earth/data/boundaries/v1/" |
PMTiles manifest base path |
| Boundary tile zoom thresholds | COUNTRY_BOUNDARY_CONFIG.tileZoomThresholds |
1.6 -> z5, 2.8 -> z6, 3.4 -> z7, 4.0 -> z8, 4.6 -> z9, 5.2 -> z10 |
Production PMTiles zoom selection |
| Boundary tile cache limit | COUNTRY_BOUNDARY_CONFIG.tileCacheLimit |
150 |
Frontend LRU cache entries for loaded tile geometries |
| Boundary tile debounce | COUNTRY_BOUNDARY_CONFIG.tileDebounceMs |
180 |
View-change debounce before requesting visible tiles |
| Ocean fill color | local OCEAN_HEX |
0x010609 |
Land/ocean base canvas background |
| Land fill color | COUNTRY_BOUNDARY_CONFIG.landColor |
0x080f1b |
Land/ocean base canvas land |
| Land/ocean base opacity | COUNTRY_BOUNDARY_CONFIG.landOpacity |
1.0 |
MeshBasicMaterial.opacity |
| Land/ocean base radius offset | COUNTRY_BOUNDARY_CONFIG.landAltitudeOffset |
0.32 |
country-land-ocean radius; separated from the Earth base sphere to avoid snow / black block flicker at 50% zoom |
| Land/ocean base renderOrder | COUNTRY_BOUNDARY_CONFIG.landRenderOrder |
0.86 |
country-land-ocean.renderOrder |
| Land/ocean mask size | landMaskWidth / landMaskHeight |
2048 / 1024 |
Canvas / DataTexture size |
| Country tint color | COUNTRY_BOUNDARY_CONFIG.tintColor |
0x0b1830 |
Tint when HD texture is off |
| Country tint radius offset | COUNTRY_BOUNDARY_CONFIG.tintAltitudeOffset |
0.04 |
country-tint radius |
| Country tint renderOrder | COUNTRY_BOUNDARY_CONFIG.tintRenderOrder |
0.2 |
country-tint.renderOrder |
| Border line color | COUNTRY_BOUNDARY_CONFIG.lineColor |
0x7fc7ff |
Normal border line |
| Border line opacity | COUNTRY_BOUNDARY_CONFIG.lineOpacity |
0.58 |
Normal border line opacity |
| Border dimmed opacity on hover | COUNTRY_BOUNDARY_CONFIG.dimmedLineOpacity |
0.18 |
Normal border opacity during hover |
| Border line radius offset | COUNTRY_BOUNDARY_CONFIG.lineAltitudeOffset |
0.115 |
Normal border line radius; line layers rely on renderOrder and independent geometry, not whole-globe shell depth spacing |
| Border line renderOrder | COUNTRY_BOUNDARY_CONFIG.lineRenderOrder |
2.2 |
Normal border line level |
| Border hover color | COUNTRY_BOUNDARY_CONFIG.hoverLineColor |
0xff3b1f |
Neon red-orange |
| Border hover opacity | COUNTRY_BOUNDARY_CONFIG.hoverLineOpacity |
1.0 |
Hover line opacity |
| Border hover radius offset | COUNTRY_BOUNDARY_CONFIG.hoverAltitudeOffset |
0.115 |
Hover line radius; matches the normal border geometry to avoid double-edge ghosting during highlight changes |
| Border hover renderOrder | COUNTRY_BOUNDARY_CONFIG.hoverLineRenderOrder |
2.3 |
Hover line level |
| Border hover glow opacity | COUNTRY_BOUNDARY_CONFIG.hoverGlowOpacity |
0.38 |
Glow line opacity |
| Border hover glow line width | COUNTRY_BOUNDARY_CONFIG.hoverGlowLineWidth |
3 |
Glow LineBasicMaterial.linewidth |
| Border hover glow level offset | COUNTRY_BOUNDARY_CONFIG.hoverGlowRenderOrderOffset |
0.01 |
Glow renderOrder = 2.29 |
| Border hover glow radius offset | COUNTRY_BOUNDARY_CONFIG.hoverGlowRadiusOffset |
0 |
Glow uses the same radius as the hover line to avoid coastline detail misalignment |
Real Terrain
| Name | Variable | Current Value | Location / Notes |
|---|---|---|---|
| Terrain tile size | TERRAIN_CONFIG.tileSize |
256 |
Terrarium tile read size |
| Terrain base zoom | TERRAIN_CONFIG.baseZoom |
4 |
Terrain sampling zoom |
| Terrain geometry segments | geometryWidthSegments / geometryHeightSegments |
320 / 320 |
Terrain sphere geometry |
| Terrain base radius offset | TERRAIN_CONFIG.baseRadiusOffset |
0.16 |
Terrain overlays HD texture |
| Terrain exaggeration | TERRAIN_CONFIG.exaggeration |
34 |
Elevation to world units |
| Terrain land fade height | TERRAIN_CONFIG.landRevealFadeMeters |
220 |
Vertex alpha for coastline fade |
| Terrain opacity | TERRAIN_CONFIG.opacity |
0.68 |
MeshPhongMaterial.opacity |
| Terrain color | TERRAIN_CONFIG.color |
0x8aa884 |
MeshPhongMaterial.color |
| Terrain emissive | TERRAIN_CONFIG.emissive |
0x030704 |
Reduces self-emission to preserve terrain shading |
| Terrain specular | TERRAIN_CONFIG.specular |
0x344438 |
Gives terrain local sheen without boosting HD texture brightness |
| Terrain shininess | TERRAIN_CONFIG.shininess |
16 |
Tightens terrain highlight |
| Terrain renderOrder | inline | 1.2 |
terrain.renderOrder |
| Terrain polygonOffset | inline | factor -1, units -1 |
Reduces z-fighting near sphere surface |
Grid Lines
| Name | Variable | Current Value | Location / Notes |
|---|---|---|---|
| Grid radius offset | GRID_CONFIG.radiusOffset |
0.14 |
Grid sphere radius |
| Grid color | GRID_CONFIG.color |
0xc0e0ff |
LineBasicMaterial.color |
| Grid opacity | GRID_CONFIG.opacity |
0.08 |
LineBasicMaterial.opacity |
| Grid line width | GRID_CONFIG.lineWidth |
1 |
LineBasicMaterial.linewidth |
| Grid renderOrder | GRID_CONFIG.renderOrder |
2.05 |
Grid level |
| Latitude step | GRID_CONFIG.latitudeStep |
15 |
Latitude line generation step |
| Longitude step | GRID_CONFIG.longitudeStep |
30 |
Longitude line generation step |
| Segment sample step | GRID_CONFIG.segmentStep |
5 |
Grid line sample step |
Submarine Cables and Landing Points
| Name | Variable | Current Value | Location / Notes |
|---|---|---|---|
| Default cable color | CABLE_COLORS.default |
0xffff44 |
Used when no data color available |
| Cable radius offset | CABLE_CONFIG.line.altitudeOffset |
0.2 |
Cable line radius |
| Cable line width | CABLE_CONFIG.line.lineWidth |
1 |
LineBasicMaterial.linewidth |
| Cable opacity | CABLE_CONFIG.line.opacity |
1.0 |
Cable line opacity |
| Cable renderOrder | CABLE_CONFIG.line.renderOrder |
1 |
Cable line level |
| Landing point radius offset | CABLE_CONFIG.landingPoint.altitudeOffset |
0.2 |
Same surface height as cable lines, avoiding a floating marker |
| Landing point sprite height | local LANDING_POINT_SPRITE_HEIGHT |
3 |
THREE.Sprite base height |
| Landing point reference FOV | local LANDING_POINT_SIZE_REFERENCE_FOV |
75 |
Matches the current Earth camera FOV |
| Landing point scale minimum | local LANDING_POINT_SIZE_SCALE_MIN |
0.16 |
Minimum multiplier after roughly 200% zoom, limiting high-zoom screen footprint; 3 * 0.16 = 0.48 |
| Landing point scale maximum | local LANDING_POINT_SIZE_SCALE_MAX |
3 |
Maximum multiplier at far distance; current minimum zoom reaches roughly 2.50 |
| Landing point atlas size | local LANDING_POINT_ATLAS_CELL_SIZE |
128 |
Canvas flat shaded sphere texture size |
| Landing point color | CABLE_CONFIG.landingPoint.color |
0xffaa00 |
SpriteMaterial.color |
| Landing point opacity | CABLE_CONFIG.landingPoint.opacity |
1.0 |
SpriteMaterial.opacity |
| Landing point renderOrder | CABLE_CONFIG.landingPoint.renderOrder |
1 |
Same level as cable lines; depthTest: false keeps the ball whole, while camera-to-center globe occlusion hides back-side points |
| Landing point dim brightness | landingPointVisual.dimBrightness |
0.62 |
Dim state color multiplier |
| Related landing point opacity | landingPointVisual.related.opacityBase / opacityPulse |
0.8 / 0.2 |
Highlight pulse |
| Dimmed landing point color | landingPointVisual.dimmed.colorRGB |
{ r: 180, g: 116, b: 28 } |
Dim state color; avoids dark base showing through as a dark hole |
| Dimmed landing point opacity | landingPointVisual.dimmed.opacity |
0.78 |
Dim state opacity; no longer uses low alpha blending with dark base |
Satellites, Trails, and Footprints
| Name | Variable | Current Value | Location / Notes |
|---|---|---|---|
| Satellite fallback radius offset | SATELLITE_CONFIG.fallbackAltitudeOffset |
8 |
Legacy same-sphere position when real altitude is disabled or TLE propagation fails |
| Satellite altitude compression scale | SATELLITE_CONFIG.altitudeCompressionKm |
1200 |
TLE/SGP4 altitude compression; larger values soften high-orbit separation |
| Satellite real-altitude cap | SATELLITE_CONFIG.maxDisplayAltitudeKm |
40000 |
Altitude clamp for the compressed display mapping, covering GEO-range altitude |
| Satellite real-altitude display offset range | minRealAltitudeOffset / maxRealAltitudeOffset |
4 / 25 |
Compressed offset added to CONFIG.earthRadius; 25 is about one quarter of the current globe radius 100, keeping high-orbit separation visible without pushing GEO/MEO trails too far away |
| Satellite dot base pixel size | SATELLITE_CONFIG.dotBaseSize |
2.8 |
Point shader size |
| Satellite backdrop dot scale | SATELLITE_CONFIG.dotBackdropScale |
1.28 |
Backdrop dot size |
| Satellite dot opacity range | dotOpacityMin / dotOpacityMax |
0.42 / 1.0 |
Breathing animation |
| Satellite dot breathing speed | SATELLITE_CONFIG.dotBreathingSpeed |
0.12 |
Dot opacity animation |
| Satellite backdrop renderOrder | inline | 5 |
satelliteBackdropPoints.renderOrder |
| Satellite dot renderOrder | inline | 6 |
satellitePoints.renderOrder |
| Satellite trail length | SATELLITE_CONFIG.trailLength |
10 |
Trail buffer |
| Satellite trail line width | SATELLITE_CONFIG.trailLineWidth |
3 |
Ribbon shader uniform |
| Selected ring size | SATELLITE_CONFIG.ringSize |
0.07 |
Hover / locked ring sprite |
| Satellite overlay renderOrder | SATELLITE_CONFIG.overlayRenderOrder |
12 |
Locked ring / halo / orbit |
| Footprint renderOrder | local GROUND_FOOTPRINT_RENDER_ORDER |
3 |
Starlink footprint fill and Iridium coverage ring; must stay above land / texture / terrain surface layers |
AIS Vessels
| Name | Variable | Current Value | Location / Notes |
|---|---|---|---|
| Vessel radius offset | VESSEL_CONFIG.altitudeOffset |
0.2 |
Normal marker position, close to the real terrain base layer |
| Vessel track radius offset | VESSEL_CONFIG.track.altitudeOffset |
0.2 |
Selected vessel track line, aligned to the vessel marker radius; the frontend anchors the track endpoint to the current marker position |
| Vessel renderOrder | local VESSEL_RENDER_ORDER |
4.4 |
Normal marker and interactive overlay |
| Vessel track renderOrder | VESSEL_RENDER_ORDER - 0.1 |
4.3 |
Below vessel markers |
| Vessel point pixel size | local VESSEL_POINT_SIZE |
34 |
Shared size for normal markers and hover / locked overlays |
| Default vessel render cap | VESSEL_CONFIG.maxRenderedMarkers |
3000 |
Default limit sent to /api/v1/vessels/snapshot for the global current-state snapshot; the backend cap remains 5000 |
| Vessel texture canvas size | local VESSEL_ATLAS_CELL_SIZE |
128 |
Canvas point texture |
| Course bucket count | local VESSEL_COURSE_BINS |
32 |
Moving vessels are bucketed by COG to reduce draw calls while preserving direction |
| Vessel hover picking throttle | local VESSEL_HOVER_PICK_INTERVAL_MS |
100 |
main.js hover picking |
| Vessel screen hit radius | local VESSEL_POINTER_RADIUS_PX |
22 |
main.js screen-space picking |
AIS vessel markers use batched THREE.Points, not one THREE.Sprite per vessel. Moving vessels stay triangular, anchored or slow vessels stay circular, and hover / locked states add a same-size glow overlay. Vessels explicitly disable cluster and avoidance; dense areas may overlap and must not be reattached to dynamic screen clustering. Vessel type color and info-card type text must come from the same normalized result: vessels.js reads both backend vessel_type_name and AIS numeric vessel_type, derives the color-driving type, then exposes vessel_type_display for the info card, hover summary, and search results.
Compute Centers
| Name | Variable | Current Value | Location / Notes |
|---|---|---|---|
| Compute center radius offset | COMPUTE_CENTER_CONFIG.altitudeOffset |
0.48 |
Marker position |
| Compute center point size | local COMPUTE_CENTER_POINT_SIZE |
36 |
Shared Interactable base size for normal markers and hover / locked overlays |
| Compute center asset fit size | local COMPUTE_CENTER_ICON_FIT_SIZE |
60 |
Maximum SVG asset draw size inside the 128x128 atlas canvas, controlled by icon.fitSize |
| Compute center base opacity | COMPUTE_CENTER_CONFIG.marker.baseOpacity |
0.88 |
Normal PointsMaterial.opacity |
| Supercomputer marker scale | COMPUTE_CENTER_CONFIG.marker.supercomputerScale |
12 |
Legacy Sprite scale; not directly used by the current Interactable path |
| GPU cluster marker scale | COMPUTE_CENTER_CONFIG.marker.gpuClusterScale |
12 |
Legacy Sprite scale; not directly used by the current Interactable path |
| Hover scale | COMPUTE_CENTER_CONFIG.marker.hoverScale |
1.16 |
Hover overlay size multiplier |
| Locked scale | COMPUTE_CENTER_CONFIG.marker.lockedScale |
1.22 |
Locked overlay size multiplier, with pulse |
| Dimmed scale / opacity | dimmedScale / dimmedOpacity |
0.82 / 0.34 |
Dim state |
| Supercomputer color | COMPUTE_CENTER_CONFIG.colors.supercomputer |
"#38bdf8" |
Marker texture |
| GPU cluster color | COMPUTE_CENTER_CONFIG.colors.gpu_cluster |
"#2dd4bf" |
Marker texture |
| Linked color | COMPUTE_CENTER_CONFIG.colors.linked |
"#f8fafc" |
Linked state |
| Compute center renderOrder | local COMPUTE_CENTER_RENDER_ORDER |
4.5 |
Surface facility below satellites |
BGP Observation
| Name | Variable | Current Value | Location / Notes |
|---|---|---|---|
| BGP event radius offset | BGP_CONFIG.altitudeOffset |
0.48 |
BGP event Interactable marker |
| BGP collector radius offset | BGP_CONFIG.collectorAltitudeOffset |
0.2 |
BGP collector Interactable marker, aligned with the vessel layer |
| BGP event point size | local BGP_EVENT_POINT_SIZE |
34 |
Event Interactable base size, adjusted by severity through getPointSizeMultiplier() |
| BGP event symbol draw size | local BGP_EVENT_SYMBOL_SIZE |
60 |
Event canvas symbol draw size inside the 128x128 atlas |
| BGP collector point size | local BGP_COLLECTOR_POINT_SIZE |
36 |
Collector Interactable base size, adjusted by activity through getPointSizeMultiplier() |
| BGP collector asset fit size | local BGP_COLLECTOR_ICON_FIT_SIZE |
60 |
Maximum bgp-broadcast-pin.svg draw size inside the atlas canvas |
| Event base scale | BGP_CONFIG.marker.eventBaseScale |
6.2 |
Event ring anchor |
| Collector base scale | BGP_CONFIG.marker.collectorBaseScale |
7.4 |
Collector halo / coverage animation anchor |
| Hover / dim scale | hoverScale / dimmedScale |
1.16 / 0.92 |
Interaction states |
| Normal event opacity | BGP_CONFIG.opacity.normal |
0.78 |
BGP event Interactable normal state |
| Hover opacity | BGP_CONFIG.opacity.hover |
1.0 |
Hover state |
| Dimmed opacity | BGP_CONFIG.opacity.dimmed |
0.24 |
Dim state |
| Collector opacity | BGP_CONFIG.opacity.collector |
0.62 |
Collector state |
| Critical color | BGP_CONFIG.severityColors.critical |
0xff4d4f |
Critical event |
| High color | BGP_CONFIG.severityColors.high |
0xff9f43 |
High-severity event |
| Medium color | BGP_CONFIG.severityColors.medium |
0xffd166 |
Medium-severity event |
| Low color | BGP_CONFIG.severityColors.low |
0x4dabf7 |
Low-severity event |
| Collector base color | BGP_CONFIG.collectorColor |
0x6db7ff |
Default collector color |
| BGP halo neutral tint | BGP_CONFIG.halo.tintNeutralColor |
0xffffff |
Broad halos derive from the matching event / collector icon color and blend toward this neutral, keeping the same hue family without becoming identical |
| BGP halo icon-color blend | BGP_CONFIG.halo.tintBlend |
0.72 |
Higher values stay closer to the icon color; currently used by event region halos, collector coverage halos, and collector radar pulse |
| Region color | BGP_CONFIG.regionColor |
0x2dd4bf |
Legacy region baseline; broad BGP halos now prefer colors derived from the event or collector icon |
Celestial and Starfield
| Name | Variable | Current Value | Location / Notes |
|---|---|---|---|
| Sky sphere radius | CELESTIAL_CONFIG.skyRadius |
2600 |
Celestial background |
| Sky opacity | CELESTIAL_CONFIG.skyOpacity |
1 |
Background material |
| Sun distance / scale | sunDistance / sunScale |
2150 / 78 |
Sun sprite |
| Moon distance / scale | moonDistance / moonScale |
2050 / 38 |
Moon sprite |
| Sun halo scale | CELESTIAL_CONFIG.sunHaloScale |
136 |
Sun halo |
| Moon halo scale | CELESTIAL_CONFIG.moonHaloScale |
62 |
Moon halo |
| Sun light color / intensity | sunLightColor / sunLightIntensity |
0xfff4df / 1.02 |
Scene light |
| Back light color / intensity | backLightColor / backLightIntensity |
0x2b4c78 / 0.3 |
Scene light |
| Star count | STARFIELD_CONFIG.count |
8000 |
createStars() |
| Star radius range | minRadius + radiusJitter |
800 + 200 |
Random distribution |
| Star color | STARFIELD_CONFIG.color |
0xffffff |
PointsMaterial.color |
| Star size | STARFIELD_CONFIG.size |
0.5 |
PointsMaterial.size |