| -1000 |
天体背景 mesh |
celestial.js |
背景球 |
不参与地表拾取 |
位于所有 Earth 内容之后。 |
| -1 |
Earth 遮挡球 |
earth.js |
地球内侧不可见球 |
写入深度 |
遮挡地球背面的对象。 |
| 0 |
Earth 基座球 |
earth.js |
CONFIG.earthRadius |
地表拾取兜底目标 |
深色基座,所有可选地图层关闭时仍可见。 |
| 0.2 |
国界暗色 tint |
country-boundaries.js |
tintAltitudeOffset |
禁用 raycast |
高清材质关闭时使用。 |
| 0.86 |
海陆基座填充 |
country-boundaries.js |
landAltitudeOffset; 海洋 #010609,陆地 #080f1b |
禁用 raycast |
即使国界线关闭,基座地图仍保持可用。 |
| 0.96 |
高清 Earth 材质 |
earth.js |
textureOverlayAltitudeOffset |
可见时作为地表拾取目标 |
高清材质始终压过海陆基座填充。 |
| 1 |
大气辉光和云图 |
earth.js |
大气 / 云层球 |
不走普通对象选择路径 |
云图由“大气云图”图层开关控制。 |
| 1 |
海缆 / 登陆点 |
cables.js |
海缆线和登陆点都使用 renderOrder = 1;半径偏移都为 0.2;登陆点是专用 THREE.Sprite 黄色扁平球 |
海缆走海缆拾取路径;登陆点 depthTest: false 保持球体完整,并用相机到球心的球体遮挡判断避免背面穿透 |
登陆点和海缆同层贴地,避免地表设施层的凌空感。 |
| 1.2 |
真实地形 |
earth.js, terrain.js |
TERRAIN_CONFIG.baseRadiusOffset 加地形位移 |
禁用 raycast |
地形压过高清材质;高清材质关闭时临时隐藏,重新开启后恢复原状态。 |
| 2.05 |
经纬线 |
earth.js |
CONFIG.earthRadius + 0.14 |
禁用 raycast |
低透明度显示在高清材质上。 |
| 2.2 |
国界线 |
country-boundaries.js |
lineAltitudeOffset = 0.115 |
depthTest: true,禁用 raycast |
略高于高清材质 0.10,低于地形基准 0.16,减少悬浮感;地形 depthWrite: false,所以地形开启时仍可见。 |
| 2.29 |
国界 hover 光晕 |
country-boundaries.js |
hover 半径加 glow 偏移 |
depthTest: false,禁用 raycast |
用 additive 光晕增强交界边和地形开启时的 hover 可见性。 |
| 2.3 |
国界 hover 实线 |
country-boundaries.js |
hoverAltitudeOffset = 0.14 |
depthTest: false,禁用 raycast |
霓虹红橘 hover 线;中国和中国(台湾)共享高亮组。 |
| 3 |
卫星 footprint 填充 / Iridium coverage ring |
satellites.js, iridium-footprint-adapter.js |
GROUND_FOOTPRINT_RENDER_ORDER |
depth-tested;Iridium adapter 的 fill / ring 也使用同一 renderOrder |
Footprint 在 land / texture / terrain 和国界线之上,但在算力中心和卫星之下。 |
| 3-4.5 |
BGP 观测站、事件扩散圈和事件 marker |
bgp.js, interactable.js |
BGP 观测站和事件 marker 均使用 Interactable 批量 THREE.Points;事件 marker 使用 BGP_EVENT_RENDER_ORDER = 4.5;观测站主图标使用 BGP_COLLECTOR_RENDER_ORDER = 4.4 和 BGP_CONFIG.collectorAltitudeOffset = 0.2;事件 overlay 进入 bgp-event-overlay-layer;观测站 halo 和覆盖扇形进入 bgp-collector-radar-layer |
BGP 事件和观测站都通过 Interactable 屏幕空间 picking,并参与同坐标避让 |
BGP 观测站主图标与船只同层;BGP 事件与算力中心同层;向外扩散圈、观测站雷达/覆盖动画继续由 BGP 业务逻辑驱动。 |
| 4.3 |
AIS 船只轨迹线 |
vessels.js |
VESSEL_RENDER_ORDER - 0.1;CONFIG.earthRadius + VESSEL_CONFIG.track.altitudeOffset |
跟随船只显隐,不单独参与拾取 |
选中船只后显示最近轨迹,低于船只 marker。 |
| 4.4 |
AIS 船只 marker |
vessels.js, interactable.js |
VESSEL_RENDER_ORDER;业务高度为 CONFIG.earthRadius + VESSEL_CONFIG.altitudeOffset;普通 marker 为分桶 THREE.Points,hover / locked 为单点 THREE.Points overlay |
depthTest: true;main.js 使用屏幕空间 picking,只取正面 marker;参与 Interactable 同坐标避让 |
航行船只用三角点纹理,停泊/低速用圆点;普通态无 glow,交互态叠加同尺寸 glow;低于算力中心 4.5。 |
| 4.5 |
算力中心 |
compute-centers.js, interactable.js |
使用 COMPUTE_CENTER_RENDER_ORDER 并由 Interactable 绘制 |
通过 Interactable 屏幕空间 picking,参与同坐标避让 |
地表设施层,保持在卫星下方。登陆点已下沉到海缆层。 |
| 5 |
卫星背景点 |
satellites.js |
固定 renderOrder |
屏幕空间卫星拾取 |
位于卫星点下方。 |
| 6 |
卫星点 |
satellites.js |
固定 renderOrder |
屏幕空间卫星拾取 |
卫星点压过 footprint 和算力中心。 |
| 12+ |
卫星锁定 ring、halo、预测轨道 |
satellites.js |
SATELLITE_CONFIG.overlayRenderOrder 及偏移 |
卫星覆盖层路径 |
用于选中 / 锁定卫星强调。 |
| 98-100 |
太阳 / 月亮 halo 和 sprite |
celestial.js |
固定 renderOrder |
天体拾取禁用 |
前景天体 sprite。 |