Bloqueou raycast no modo AR
X-Lovable-Edit-ID: edt-54bddaeb-6e2a-4b73-a991-579cdef5eec4 Co-authored-by: Reifonas <211114984+Reifonas@users.noreply.github.com>
This commit is contained in:
@@ -354,6 +354,9 @@ function XRSnapHandler() {
|
|||||||
}, [gl, mouse, measureMode]);
|
}, [gl, mouse, measureMode]);
|
||||||
|
|
||||||
useFrame(() => {
|
useFrame(() => {
|
||||||
|
// Em AR imersivo, a medição é feita pelo XRControllerMeasure (gatilho do controle).
|
||||||
|
// Evita raycast pesado por frame que travava o Quest ao ativar "Medir".
|
||||||
|
if (gl.xr.isPresenting) { setSnapPoint(null); return; }
|
||||||
if (!measureMode) { setSnapPoint(null); return; }
|
if (!measureMode) { setSnapPoint(null); return; }
|
||||||
raycaster.setFromCamera(mouse, camera);
|
raycaster.setFromCamera(mouse, camera);
|
||||||
const intersects = raycaster.intersectObjects(scene.children, true);
|
const intersects = raycaster.intersectObjects(scene.children, true);
|
||||||
@@ -373,6 +376,7 @@ function XRSnapHandler() {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
// Click to measure
|
// Click to measure
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (!measureMode) return;
|
if (!measureMode) return;
|
||||||
|
|||||||
Reference in New Issue
Block a user