Description:
When placing small models (e.g., bathroom faucet 10-15cm) in WebXR AR mode, the white manipulation frame/bounding box appears with a large distance (10-20cm) between the frame edges and the actual 3D geometry. This makes rotating and moving the model unintuitive.
Observe the manipulation gizmo around the model
Expected behavior:
The manipulation frame should be close to the model geometry, allowing intuitive touch gestures for rotation/translation.
Actual behavior:
The frame has a large offset (~10-20cm), making interaction feel disconnected from the model. User must reach far beyond the visible geometry to manipulate it.
Additional context:
Interestingly, the same model in Scene Viewer (Android fallback, ar-modes="scene-viewer") shows the manipulation frame much closer and tighter to the geometry. The excessive offset appears to be specific to the WebXR implementation in model-viewer.
This suggests the issue is in how model-viewer calculates or applies the gizmo bounds/offset for WebXR specifically, not a general geometry problem.
Environment:
@google/model-viewer@4.0.0
WebXR implementation: Native browser
Device: Android phone with WebXR support
Model size: Small (faucet/bathroom fixture, ~0.2m scale)
ar-scale: fixed
bounds: tight (tested with and without)
Workarounds attempted:
✗ bounds="tight" (no effect)
✗ ar-scale="fixed" vs auto (no effect)
✗ Model optimization (verified geometry is clean, origin centered, scale correct)
Question:
Is there an API or parameter to control the WebXR gizmo offset distance, or is this a platform limitation of the WebXR manipulation layer?
Description:
When placing small models (e.g., bathroom faucet 10-15cm) in WebXR AR mode, the white manipulation frame/bounding box appears with a large distance (10-20cm) between the frame edges and the actual 3D geometry. This makes rotating and moving the model unintuitive.
Observe the manipulation gizmo around the model
Expected behavior:
The manipulation frame should be close to the model geometry, allowing intuitive touch gestures for rotation/translation.
Actual behavior:
The frame has a large offset (~10-20cm), making interaction feel disconnected from the model. User must reach far beyond the visible geometry to manipulate it.
Additional context:
Interestingly, the same model in Scene Viewer (Android fallback, ar-modes="scene-viewer") shows the manipulation frame much closer and tighter to the geometry. The excessive offset appears to be specific to the WebXR implementation in model-viewer.
This suggests the issue is in how model-viewer calculates or applies the gizmo bounds/offset for WebXR specifically, not a general geometry problem.
Environment:
@google/model-viewer@4.0.0
WebXR implementation: Native browser
Device: Android phone with WebXR support
Model size: Small (faucet/bathroom fixture, ~0.2m scale)
ar-scale: fixed
bounds: tight (tested with and without)
Workarounds attempted:
✗ bounds="tight" (no effect)
✗ ar-scale="fixed" vs auto (no effect)
✗ Model optimization (verified geometry is clean, origin centered, scale correct)
Question:
Is there an API or parameter to control the WebXR gizmo offset distance, or is this a platform limitation of the WebXR manipulation layer?