From c03dee0ade30c364ca274fa80e61d8dfa74ac6c1 Mon Sep 17 00:00:00 2001 From: htlee Date: Mon, 16 Feb 2026 16:04:58 +0900 Subject: [PATCH] =?UTF-8?q?fix(map):=20globe=20=EB=85=B8=EB=9E=80=EB=B2=BD?= =?UTF-8?q?=20=ED=95=B4=EA=B2=B0=20+=20=EC=8B=AC=ED=95=B4=EC=83=89=20?= =?UTF-8?q?=EB=B3=B5=EA=B5=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - deck-globe 렌더 파이프라인 비활성화로 노란벽 해소 - 베이스 수색 원복 (#14606e/#114f5c) - globe 필터 로직 제거 (불필요) Co-Authored-By: Claude Opus 4.6 --- .../web/src/widgets/map3d/hooks/useDeckLayers.ts | 16 ++++++++++++++++ apps/web/src/widgets/map3d/layers/bathymetry.ts | 1 + 2 files changed, 17 insertions(+) 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) {