From Open Metaverse Wiki

Basic planning questions

Single region worlds, or connected regions?

For this document, I'm going to assume we want a big, more or less seamless world. Something more like OsGrid or Second Life than Sansar or Sinespace.

Systems where you load a self-contained world and go are sometimes called "game level loaders". That's what they really are, a game engine that loads pre-built level files. There are already many systems in that space. It's not worthwhile making another one. Especially since Sansar, High Fidelity, and Sinespace never got any significant number of users.

Open source

That's a given for this organization.

New start or build on an existing system?

There are arguments both ways. A new start requires substantial resources, well into 8 figures in US dollars, and a sizable team. Building on an existing system gets you going faster, but requires much effort in fixing old code. So, assume starting from an existing base.

Available bases to build upon

Server side, there are not many options to build upon.

Open Simulator

If you're here, you know about that one.

Improbable's Morpheus[1]

Grid-scale. Pricing unknown, but their previous system, SpatialOS, put at least four indy games out of business due to server costs. Proprietary. Previous version had to be hosted on Google's cloud, except for a company in China. They have the only system that can handle both a big world and big crowds in a small area.

Multiplayer Unreal Engine[2]

Works for an MMO architecture where one server is in charge. Not grid-scale. Primarily C++. Free until you get $1M in revenue, then they want a cut.

Epic has been making statements for years about supporting metaverses directly in Unreal Engine. So far, though, their model is that you create worlds with Unreal Editor, compile them, and get a game out. Not really a metaverse model.

Multiplayer Unity engine[3]

Much like Unreal Engine, but different pricing model. [Not free.]( Decentraland looks like a metaverse, but it works by editing an entire parcel offline in the Unity editor and then uploading it.


Decentraland's architecture is reasonably simple. The code is here.[4]. It works by sharing Unity scene graphs. It runs in a browser, and is reasonably responsive, but is limited to about 20,000 triangles per parcel. So it's going to look cartoonish. Updates are done offline, in Unity's editor, to an entire parcel at once.

Decentraland has very few users. Current user count info, from the servers, is here.[5] Right now, 365 logged in users. Mostly, people just trade land and hope the price goes up.

Hubs [6]

This is the Mozilla Foundation's open source 3D world. The code is here.[7] It looks about as good as Facebook Horizon - cartoonlike, but not as bad as Decentraland. It's all standard web technology, using Javascript and JSON. It's one of those systems that has many little "rooms" between which you can teleport.

Lamina 1 [8]

This is a blockchain-first metaverse project. A blockchain has been defined, the 3D world does not exist. There's nothing to build upon yet. The track record of blockchain-first projects is not good.


Mobile or desktop?

Mobile implies severe constraints but more potential users. Discuss.

Cloud rendering?

Cloud rendering lets low-end machines play, but costs $20-$45/month for a cloud service. Each user is renting their own gamer PC in a data center.

NVidia GeForce Now[9] is an option. They recently had a price cut. Sony and Microsoft also have cloud gaming services, but they want much more control over what you're doing and want to own the user base. NVidia just wants to rent out GPUs.

Alternatives include Sony (only for Playstation), Microsoft (only for XBox), and Amazon Luna (mostly retro low-compute games). There's also Shadow PC, which is $45/month with a good GPU.

Cloud rendering is a nice option to have. It lets anyone run on a low-end computer. Anything that can run Netflix can run a cloud rendering system, the user's local machine is just playing video from the remote machine. It also lets you get onto TVs, game consoles, and such without much effort. It does not have to be the only option.