diff --git a/src/components/three/ModelViewer.tsx b/src/components/three/ModelViewer.tsx index 494e899..e8ea0c2 100644 --- a/src/components/three/ModelViewer.tsx +++ b/src/components/three/ModelViewer.tsx @@ -802,7 +802,7 @@ function SelectionHandler() { /** Walks the scene each time visibility/selection state changes and applies * per-element visibility + emissive highlight for selected elements. */ -function VisibilityApplier() { +export function VisibilityApplier() { const { scene } = useThree(); const nonce = useModelStore((s) => s.visibilityNonce); const models = useModelStore((s) => s.models); diff --git a/src/pages/XRSession.tsx b/src/pages/XRSession.tsx index ce16afb..e650183 100644 --- a/src/pages/XRSession.tsx +++ b/src/pages/XRSession.tsx @@ -22,6 +22,7 @@ import { ControllerLocomotion } from '@/components/three/ControllerLocomotion'; import { useDevKit } from '@/devkit/useDevKit'; import { DevPanel } from '@/devkit/DevPanel'; import { FakeControllers } from '@/devkit/FakeControllers'; +import { VisibilityApplier } from '@/components/three/ModelViewer'; // --- Diagnóstico XR --- console.log('[XR] Inicializando store...'); @@ -158,6 +159,7 @@ function XRModel({ sceneModel }: { sceneModel: import('@/stores/useModelStore'). { - + {/* In-world HUD — visible inside passthrough where DOM overlays cannot reach */}