← Blog

See Your 3D Avatar in the Real World

Every avatar and 3D model on three.ws now has a View in AR button. Tap it on your phone and the model drops into your camera view — anchored to your desk, your floor, your shelf. Walk around it. It holds position. No app to install, no QR code to hunt for. It runs in the browser.

Try it now: open any avatar on three.ws, switch to the AR tab, and tap Place in your space on your phone. Android uses WebXR; iPhone uses iOS Quick Look — both are native, zero-install experiences.

Browse avatars → Make a 3D model

How it works

The AR feature is built on Google's <model-viewer> web component, which wraps two platform-native AR systems:

On desktop, the AR tab shows a QR code. Scan it with your phone and the AR experience opens directly — so you can preview a model on your big screen and then place it in your room in one tap.

From forge to your living room in four steps

1
Generate a model. Type a prompt at three.ws/forge — or upload photos — and a textured GLB lands in your gallery in seconds.
2
Open its AR page. From the model viewer, switch to the AR tab. On a phone, you go straight to placement. On a desktop, you get a QR code.
3
Point at a flat surface. The camera detects a plane — floor, table, shelf. A reticle confirms the anchor point.
4
Tap to place. The model appears at real-world scale. Walk around it. Pinch to resize. It stays put.

Works on avatars too

AR isn't limited to Forge models. Every avatar — rigged humanoid characters you've created or imported — has a dedicated AR experience at /avatars/:id/ar. The same QR / mobile split applies: scan from your desk, place from your phone. The avatar tab strip (3D · Chat · AR · Embed) is the same UI across every avatar page.

Embedded models are AR-ready too

If you've embedded a three.ws model on another site using the <agent-3d> tag or the iframe embed, visitors on mobile already get a one-tap AR launcher in the embed's toolbar. The AR capability travels with the model, not with the page.

What this opens up

AR unlocks use cases that a screen can't cover:


Try it


← All posts