WebXR manipulation gizmo has excessive offset from small 3D models, making interaction difficult

Author: colordropCreated May 19, 2026Updated Aug 8, 2026

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/[email protected] 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?