A VR experiment for the Quest 3

Every door leads to a world that did not exist a moment ago.

A chain of generated low-poly worlds joined by doors. Explore, follow the arrow on your glove, sync the door, open it and step through. The world you leave is deleted.

How a jump works

One world, one door, no way back.

  1. 1

    Explore

    Every world is a full, living place: a valley of stone walls and sheep, a night market under a rail line, a hall of forges under a mountain. Things move in every view, and small props can be pushed, grabbed and thrown.

  2. 2

    Follow the arrow

    A glove sits on your left hand with a screen on its back, like a watch. Its arrow points to the one door that leads on and tells you how far it is.

  3. 3

    Sync the door

    Aim the glove at the door and make a fist. Arcs jump from your hand to the frame and pulse faster as the sync fills. Hold steady for about two and a half seconds.

  4. 4

    Step through

    The door opens onto the next world, correct in both eyes. No fade and no loading screen. Behind you the world you left is deleted, and the next one has never existed before.

Relax

No timer and no threat. Wander as long as you like and look for what each world hides: viewpoints, hidden places, curious objects, creatures and small events. Hold the menu button when you want to go home, and a door to the hub stands up in front of you.

Arcade

Each world gives you a head start, measured from the walk to its door. The margin shrinks with every door you cross. Discoveries along the way buy time. Your score is the doors crossed, then your time, then what you found.

Worlds

Places worth wandering.

Every world starts as a hand-written brief: what the place is and what is going on in it, how it looks and moves, who lives there, what there is to find and where the door stands. Each run keeps the character of its world but changes its map, its discoveries and the place of its door. These are the worlds with a concept image so far.

01outdoor

Green hills at noon

A bright summer valley of round hills, stone walls and small woods. Part of the flock has wandered off across the pastures, and a storm is building in the west.

Door
Shepherd's hut plank back door
Size
a valley about 500 x 400 m
Relax
15 to 25 minutes

02outdoor

Heath at dusk

A wide heather moor under a fading sky, cut by dark pinewoods and a bog. Tonight, as every year at dusk, the villagers carry lanterns across the heath along a line of cairns to a ring of standing stones.

Door
Lone oak door in a stone circle
Size
a plateau about 600 x 500 m
Relax
15 to 25 minutes

03outdoor

Salt flats oasis

A small oasis of palms and a spring sits between red dunes and a wide white salt pan. A caravan has camped there for three days.

Door
Caravanserai's carved cedar door
Size
a basin about 700 x 600 m
Relax
20 to 30 minutes

04outdoor

Fen stilt village

A flat wetland of reeds, channels and alder woods, with a village of eel-catchers on stilts joined by boardwalks. The old sluice that keeps the fen drained has jammed, and the keeper spends day and night at it with a toolbox and a lantern.

Door
Tarred door at the windmill base
Size
about 500 x 450 m of fen
Relax
15 to 25 minutes

05city

Neon market in the rain

A night market packed under an elevated rail line: noodle bars, repair stalls, stacked apartments and neon in every colour. It rains without a pause.

Door
Laundromat steel back door
Size
about 350 x 300 m, 4 to 6 blocks
Relax
15 to 25 minutes

06city

Frontier town bank job

A dusty town of one main street, a rail depot and scattered corrals. The payroll for the mine comes in by stagecoach at noon and goes into the bank.

Door
Assay office timber door
Size
about 500 x 400 m, one main street with outskirts
Relax
20 to 30 minutes

07city

Canal city carnival

A city of narrow alleys, bridges and canals on the last night of carnival. Everyone wears a mask.

Door
Ivy-hidden green garden door
Size
an island about 350 x 300 m, alleys, canals and one piazza
Relax
20 to 30 minutes

08city

Harbour town at storm tide

A fishing town of steep lanes, slate roofs and a stone harbour wall. A storm is coming in on the evening tide.

Door
Weathered blue net-loft door
Size
about 400 x 350 m, lanes on a slope down to the sea
Relax
15 to 25 minutes

09underground

Dwarven hall of forges

Great pillared halls, rows of forges and mine galleries cut over several levels under a mountain. The forge bellows run on a water wheel fed by an underground channel.

Door
Bronze-bound oak side door
Size
3 to 4 levels, about 30 to 40 rooms and halls
Relax
20 to 30 minutes

10underground

Flooded metro line

A closed metro line of tiled platforms, running tunnels and maintenance corridors, its lowest level half flooded. A few people live in the dead stations, around fires on the platforms.

Door
Steel staff door with wire glass
Size
2 to 3 levels, about 600 m of tunnel and corridor
Relax
15 to 25 minutes

11underground

Monastery catacombs

Under a mountain monastery run the catacombs: ossuaries, a cistern, monks' cells and a library of chained books that no one may read. The monks copy, sweep and pray on a fixed round.

Door
Narrow iron-studded oak door
Size
2 to 3 levels, about 25 to 35 rooms and passages
Relax
15 to 25 minutes

13outdoor

Tea terraces in the mist

A steep slope cut into narrow tea terraces, stepping down from a pine ridge to a river gorge. It is early morning in the first picking week.

Door
Sliding door of a stone storehouse
Size
a mountainside about 550 x 450 m
Relax
15 to 25 minutes

14outdoor

Autumn lake camp

A long lake among birch woods at the end of the season. The fishing camp on its north shore is packing up: boats come out of the water, nets hang to dry for the last time, shutters go up on the cabins.

Door
Green plank door of a tool shed
Size
a lakeshore about 600 x 450 m
Relax
15 to 25 minutes

15outdoor

Black sand island

A small island of black sand and old lava around a volcano that has smoked for three days. Nobody is afraid yet, but the fishing village is ready: boats are pulled to the waterline, water jars are filled, and the elders watch the plume.

Door
Woven cane door of a net hut
Size
an island shore about 650 x 500 m
Relax
15 to 30 minutes

16outdoor

Glowcap forest

A sunken basin where mushrooms grow taller than houses and glow from the gills as the light goes. It is twilight, the hour when the caps start to shine and release their spores.

Door
Round door in a mushroom stem
Size
a forest basin about 500 x 450 m
Relax
15 to 25 minutes

17city

Airship harbour

A town of timber and brick built in steps up a tall sea cliff, with mooring masts and landing decks jutting out over the water. Airships of every size hang at their masts.

Door
Steel-banded cliff storeroom door
Size
a cliff harbour about 400 x 300 m on four levels
Relax
15 to 25 minutes

18city

Winter market village

A village of steep-roofed timber houses in a high snowy valley, on the one night of the year when the whole valley comes for the winter market. Stalls fill the square, a brass band plays by the bell tower, and people skate on the frozen pond under strings of lanterns.

Door
Star-carved woodshed back door
Size
a mountain village about 350 x 300 m
Relax
15 to 25 minutes

19city

Rooftop medina at sunset

A walled old town of flat-roofed houses, covered souk lanes and small squares. The sun is low and the souk is closing: traders pull down shutters and roll up awnings, porters wheel the last carts out.

Door
Teal cedar door with brass studs
Size
350 to 450 m across
Relax
15 to 25 minutes

The images are generated concept art: the look each world is built toward, not screenshots from the game.

How it is built

One PC, one headset, no cloud servers.

Client

Godot 4 renders on a Linux PC and builds every world from JSON specs at runtime, loading models as glTF. WiVRn streams the picture to a Quest 3 over USB or Wi-Fi.

Backend

A TypeScript server on Bun, on the same PC, generates each world from a seed: terrain, chunks and placement, streamed ahead of the player. Settings, runs and caches live in a local SQLite file.

Opus

Before play, Opus runs through the Claude Code CLI with no time limit. It ranks candidate models for each world, and it is planned to write whole settings from one sentence. No Opus call happens during play.

Jev

During play, Jev is planned to make the quick typed decisions that make each run unique: map, door place, discoveries. Every call has a timeout and a seeded fallback, so the game plays without it.

Assets

Models and materials come from CC0 and CC-BY sources: Quaternius, Kenney, Poly Pizza, Sketchfab, Poly Haven and ambientCG. They download into a local cache with a hash and a credit line for every file.

Look

Low poly, but not too low: faceted shapes with enough detail to read as real things, one palette and one asset family per world, soft light, gradient skies and fog.

Status

Built one layer at a time.

Each layer ends with a check in the headset before the next one starts.

  1. Layer 0 Red ball in a room Done
  2. Layer 1 Interaction and locomotion Done
  3. Layer 2 Data-driven scenes Done
  4. Layer 3 Backend serving specs Done
  5. Layer 4 Chunked world streaming Done
  6. Layer 5 Runs and the jump Done
  7. Layer 6 Downloaded parametric asset library Done
  8. Layer 7 The glove and the door sync Done
  9. Layer 8 Low-poly worlds Built, in headset check
  10. Layer 9 The hub, the two modes and the first discoveries Built, in headset check
  11. Layer 10 Living worlds Built, in headset check
  12. Layer 11 The spacetime police On hold
  13. Layer 12 World kinds Planned
  14. Layer 13 Opus setting author Planned
  15. Layer 14 Jev run director Planned
  16. Layer 15 Discoveries and places Planned
  17. Layer 16 Inhabitants Planned
  18. Layer 17 Polish and performance Planned