Skip to content

feat(samples): ar-model-viewer — persistent plane mesh + gesture docs#672

Merged
ThomasGorisse merged 2 commits intomainfrom
feat/ar-model-viewer-gestures
Mar 20, 2026
Merged

feat(samples): ar-model-viewer — persistent plane mesh + gesture docs#672
ThomasGorisse merged 2 commits intomainfrom
feat/ar-model-viewer-gestures

Conversation

@ThomasGorisse
Copy link
Contributor

Summary

Two improvements to the AR model viewer sample:

1. Persistent plane mesh visualization

planeRenderer was previously set to anchor == null, hiding the plane grid as soon as a model was placed. Changed to planeRenderer = true so the ARCore plane grid stays visible at all times — users can see where they can place additional objects even after one model is already in the scene.

2. Gesture support documented

Confirmed that isEditable = true on ModelNode already wires up all three touch gestures internally via GestureDetector:

  • Single-finger drag → moves the model along the AR plane
  • Two-finger pinch → scales the model (clamped by editableScaleRange)
  • Two-finger twist → rotates the model around Y axis

Added inline comments to document this so future developers don't need to re-investigate.

Test plan

  • ./gradlew :samples:ar-model-viewer:assembleDebug
  • Place a model → verify plane grid stays visible
  • Pinch to scale the placed model
  • Two-finger twist to rotate the placed model

🤖 Generated with Claude Code

ThomasGorisse and others added 2 commits March 20, 2026 20:01
Interactive demo of four Filament View post-processing effects using the
existing View parameter on Scene {}. No new SceneView API required.

Effects:
- Bloom with lens flare, starburst, chromatic aberration
- Depth of Field (physical, circle-of-confusion)
- Screen-Space Ambient Occlusion with contact shadows
- Atmospheric Fog with IBL colour sampling

Model: Damaged Helmet (CC0, KhronosGroup glTF-Sample-Assets)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ntation

Plane visualization:
- Change planeRenderer from `anchor == null` to always `true` so
  ARCore's built-in textured grid remains visible even after a model
  is placed, giving users a clear view of all detected surfaces.

Gesture support (was already wired via isEditable, now documented):
- Add inline comments on ModelNode explaining that isEditable = true
  activates three gestures automatically: single-finger drag to move,
  two-finger pinch to scale (clamped by editableScaleRange), and
  two-finger twist to rotate around Y. No additional gesture callbacks
  are needed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@ThomasGorisse ThomasGorisse merged commit ce6432a into main Mar 20, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant