diff --git a/apps/web/src/widgets/map3d/hooks/useDeckLayers.ts b/apps/web/src/widgets/map3d/hooks/useDeckLayers.ts index 4ab3b49..af52639 100644 --- a/apps/web/src/widgets/map3d/hooks/useDeckLayers.ts +++ b/apps/web/src/widgets/map3d/hooks/useDeckLayers.ts @@ -51,6 +51,12 @@ import { } from '../lib/tooltips'; import { sanitizeDeckLayerList } from '../lib/mapCore'; +// NOTE: +// Globe mode now relies on MapLibre native overlays (useGlobeOverlays/useGlobeShips). +// Keep Deck custom-layer rendering disabled in globe to avoid projection-space artifacts. +const ENABLE_GLOBE_DECK_OVERLAYS = false; + + export function useDeckLayers( mapRef: MutableRefObject, overlayRef: MutableRefObject, @@ -595,6 +601,16 @@ export function useDeckLayers( const deckTarget = globeDeckLayerRef.current; if (!deckTarget) return; + if (!ENABLE_GLOBE_DECK_OVERLAYS) { + try { + deckTarget.setProps({ layers: [], getTooltip: undefined, onClick: undefined } as never); + } catch { + // ignore + } + return; + } + + const overlayParams = GLOBE_OVERLAY_PARAMS; const globeLayers: unknown[] = []; diff --git a/apps/web/src/widgets/map3d/layers/bathymetry.ts b/apps/web/src/widgets/map3d/layers/bathymetry.ts index 9f38f38..7d5a48a 100644 --- a/apps/web/src/widgets/map3d/layers/bathymetry.ts +++ b/apps/web/src/widgets/map3d/layers/bathymetry.ts @@ -357,6 +357,7 @@ export function applyBathymetryZoomProfile(map: maplibregl.Map, baseMap: BaseMap // ignore } } + } function applyKoreanLabels(style: StyleSpecification) {