The walk page
three.ws/walk is the full experience: move an avatar through six 3D worlds, switch between four camera modes, fire gestures, see other walkers live, and step into AR. This page documents the controls exactly as they ship.
Keyboard & pointer controls
On desktop, the avatar is driven with the keyboard; the mouse orbits the camera.
| Key | Action |
|---|---|
| W / ↑ | Move forward |
| S / ↓ | Move backward |
| A / ← | Strafe left |
| D / → | Strafe right |
| Shift (hold) | Run |
| Space | Jump |
| Q / E | Snap-turn 45° left / right |
| C | Cycle camera mode |
| V | Cycle environment |
| G (hold) | Open the gesture wheel |
| 1–8 | Play a gesture directly |
| T / Enter | Focus chat |
| P | Screenshot |
| R | Toggle GIF recording |
| M | Toggle minimap |
| Z | Hide UI (Zen mode) |
| H / ? | Toggle the help overlay |
| Mouse drag | Orbit the camera |
| Scroll / pinch | Zoom in / out |
| Esc | Close overlay / release pointer lock |
Camera modes
Press C (or tap the camera button) to cycle through four modes. Your choice persists across sessions.
| Mode | Label | Behaviour |
|---|---|---|
follow | Follow | Default third-person camera that trails the avatar. |
cinematic | Cinematic | Auto-orbiting camera that periodically cuts to a new angle. |
firstperson | First Person | Sees through the avatar's eyes; the body is hidden. |
topdown | Top Down | Overhead view of the avatar and surrounding world. |
Environments
Six worlds, each with its own terrain, sky, and lighting. Cycle with V, or land directly in one with the ?env= URL parameter.
| id | Name | Setting |
|---|---|---|
park | Park | Rolling green with shade trees, benches, and lamp posts. (default) |
beach | Beach | Bright sand, palms, parasols, and a turquoise sea. |
gallery | Gallery | White-walled exhibition space with pedestals and hung art. |
cyberpunk | Cyberpunk | Neon towers and holo signs over a rain-dark street. |
office | Office | The three.ws virtual office — desks, plants, brand wall. |
void | Void | A minimal grid plane under a soft gradient — pure focus. |
https://three.ws/walk?env=cyberpunk
Gestures
Eight gestures play on top of (or instead of) walking. Hold G for the radial wheel, or press a number key. Upper-body gestures layer over locomotion so the avatar keeps walking; full-body gestures take over until they finish.
| # | Gesture | Layer |
|---|---|---|
| 1 | wave | Upper body (keeps walking) |
| 2 | dance | Full body |
| 3 | sit | Full body |
| 4 | point | Upper body (keeps walking) |
| 5 | cheer | Upper body (keeps walking) |
| 6 | agree | Upper body (keeps walking) |
| 7 | disagree | Upper body (keeps walking) |
| 8 | talking | Full body |
Multiplayer presence
The walk page connects to a real-time presence server, so when others are in the same world you see them move, gesture, and chat live. Each remote walker's position, facing, motion, name, colour, and avatar are synchronised continuously. The status pill shows online, connecting, solo, or offline, and a player list names everyone present.
Walkers are grouped into shared rooms by the ?coin community they
arrive with — pass a Solana mint and a friendly name to put a community in one
room together:
https://three.ws/walk?coin=<mint>&coinName=<name>&coinSymbol=<ticker>
AR camera passthrough
On a phone, the AR button drops the avatar into your real surroundings. It streams the rear camera as the backdrop, hides the procedural terrain, keeps a shadow-catcher under the avatar's feet, freezes the camera in world space, and continuously samples the live video to match the avatar's lighting to your room.
getUserMedia) for passthrough — it is not WebXR spatial AR, so there is no plane detection or world anchoring. It requires a browser with camera access and falls back gracefully with a clear message where the camera API is unavailable.
URL parameters the page reads
Append these to /walk to deep-link into a configuration.
| Parameter | Value | Effect |
|---|---|---|
avatar | avatar UUID | Load a registered avatar by id. |
avatarUrl | GLB / VRM URL | Load a model directly by URL. |
name | string (≤24 chars) | Pre-fill the player name. |
env | environment id | Start in a specific world. |
coin | Solana mint | Join that community's shared room. |
coinName | string (≤48) | Display name for the community. |
coinSymbol | string (≤16) | Ticker for the community. |
coinImage | image URL (≤1024) | Community logo. |
agent | agent id | The three.ws agent this walker embodies. |
ui | hidden / off | Hide the UI on load (Zen mode). |