
Third Room
» see thirdroom.io as it lived, on the wayback machine
~ the goodbye ~
Third Room was a 3D world that ran in a browser tab on top of Matrix, the open chat protocol. Every world was a Matrix room. Models and textures sat in the homeserver's media repository the same way a photo attachment would, world state lived in room state, and the realtime sync went over WebRTC data channels signaled through Matrix group calling. If you already had a Matrix account, you already had an account here, and your voice came through spatialized and end-to-end encrypted.
It was announced on 8 February 2022, two days after a FOSDEM talk about native group voice and the metaverse on Matrix. The first build anyone outside could walk into opened on 27 September 2022 as Tech Preview 1. Tech Preview 2, called the Creator Update, landed on 7 June 2023 with an in-world collaborative editor. Seven weeks later the team was gone.
The announcement came from the project's own Mastodon account on 27 July 2023, saying the team had recently been laid off and the project was on pause while they figured out next steps. Matthew Hodgson put the reason in that week's Matrix newsletter without softening it: the people who had said they were interested in funding the project did not come through in the end, and Element did not have the resources to carry the development alone. By the Matrix holiday update that December the wording had hardened to "the team has now disbanded."
~ the chronicle ~
| Born | 27 September 2022, as Tech Preview 1 |
|---|---|
| Peak | two tech previews and 647 stars on GitHub |
| Killed | 27 July 2023 |
| Lifespan | 10 months as somewhere you could actually go |
| Made by | a three-person team at Element, led by Robert Long |
| Killed by | funding that never arrived |
~ how it was put together ~
The engine had a name, Manifold, and it was a real engine rather than a scene loader. Entities and components sat in bitECS and rendering went through Three.js on WebGL2. The render thread ran decoupled at 120 hertz or better while the game thread held 60, the two of them talking across a SharedArrayBuffer with a lock-free scene graph in between. Physics was Rapier, compiled from Rust to WebAssembly.
Worlds were glTF 2.0 files end to end, including inside the editor, so a scene authored in Blender or exported out of Unity was the same artifact the runtime loaded. World scripts ran inside a WebAssembly sandbox, because they came from strangers. WebXR shipped with the Creator Update, which meant a headset worked but was never required, and somebody on the team got the whole thing running on a Steam Deck.
~ the thing it never finished ~
State did not persist, and the Creator Update release notes said so plainly: when all the clients from a world disconnect, the state is lost and the world resets back to its original state. You could build something alongside other people for an hour, then everybody would leave, and the room would be empty in the specific sense of being blank again. Persistence was queued for Tech Preview 3. There is a tp3-refactor branch in the repository. Tech Preview 3 is where the funding ran out.
~ the thing i did not know was there ~
Matrix I knew as a chat protocol, the thing people recommend when they want off Slack without going back to IRC. That it had a 3D world attached to it for the better part of two years was news to me when I went looking. Third Room was built by three people off to one side of core Matrix development, it got roughly one piece of coverage outside the Matrix blog, and its entire public existence fits inside a single year, so there was not much to miss.
~ what is still standing ~
The repository is not archived. 2,923 commits, Apache 2.0, 647 stars and 70 forks, with the unfinished tp3-refactor branch still in the branch list. Nothing has been pushed to main since 11 July 2023. thirdroom.io still answers with the right title on it, behind a Cloudflare check, because nobody ever took the deploy down.
Robert Long, who led it and wrote most of the commits, had worked on Mozilla Hubs before this. That was the other browser-native social world built by people who thought the web should not need an app store, and it is also on this site.
~ leave a rose ~
an anonymous tribute. one rose per visitor per day.
@}-->-- ... roses left here
~ leave a wreath ~
a rose fades by morning. a wreath stays on this grave for good, with your name on it.
from $1, paid once through stripe. it keeps the graveyard running: the hosting and the nightly digging. adopt it and the headstone reads "maintained in memory by" you. the groundskeeper plants new wreaths at the next tending, usually within a day.
» one email a week: new graves and the anniversaries of the dead. subscribe
other collaboration: Pixelapse, Relay.app, Bountysource, Patch-Tag
also died in the 2020s: big big channel, Relay.app, Kite
~ leave a note ~
visitors before you have left these graveside notes. anonymous welcome.