Changes
Co-authored-by: Reifonas <211114984+Reifonas@users.noreply.github.com>
This commit is contained in:
+42
-19
@@ -491,28 +491,51 @@ const XRSession = () => {
|
||||
|
||||
<XROrigin />
|
||||
|
||||
<XRHitTestPlacement
|
||||
placementMode={placementMode}
|
||||
snapToPlanes={snapToPlanes}
|
||||
onPlace={() => {
|
||||
setPlacementMode(false);
|
||||
toast.success('Modelo posicionado na superfície!');
|
||||
}}
|
||||
>
|
||||
<XRGrabbable
|
||||
allowScale={allowScale}
|
||||
onGrabStart={() => {
|
||||
if (placementMode) setPlacementMode(false);
|
||||
}}
|
||||
>
|
||||
<XRModel url={model.url} />
|
||||
</XRGrabbable>
|
||||
</XRHitTestPlacement>
|
||||
{inXR ? (
|
||||
<>
|
||||
{/* In XR: hit-test placement → grab wrapper → model */}
|
||||
<XRHitTestPlacement
|
||||
placementMode={placementMode}
|
||||
snapToPlanes={snapToPlanes}
|
||||
onPlace={() => {
|
||||
setPlacementMode(false);
|
||||
toast.success('Modelo posicionado na superfície!');
|
||||
}}
|
||||
>
|
||||
<XRGrabbable
|
||||
allowScale={allowScale}
|
||||
onGrabStart={() => {
|
||||
if (placementMode) setPlacementMode(false);
|
||||
}}
|
||||
>
|
||||
<XRModel url={model.url} />
|
||||
</XRGrabbable>
|
||||
</XRHitTestPlacement>
|
||||
|
||||
<XRMeasurementOverlay />
|
||||
<ControllerFineTuning freeMove={freeMove} />
|
||||
<XRDebugHud />
|
||||
</>
|
||||
) : (
|
||||
<>
|
||||
{/* Desktop preview (no headset): show model with OrbitControls */}
|
||||
<group position={[0, 0, 0]}>
|
||||
<XRModel url={model.url} />
|
||||
</group>
|
||||
<XRMeasurementOverlay />
|
||||
<OrbitControls
|
||||
makeDefault
|
||||
enableDamping
|
||||
dampingFactor={0.1}
|
||||
minDistance={0.05}
|
||||
maxDistance={50}
|
||||
target={[0, 0, 0]}
|
||||
/>
|
||||
</>
|
||||
)}
|
||||
|
||||
<XRMeasurementOverlay />
|
||||
<XRSnapHandler />
|
||||
<XRGrid />
|
||||
<ControllerFineTuning freeMove={freeMove} />
|
||||
</XR>
|
||||
</Canvas>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user