How MML Works

MML brings the ease of HTML to shared 3D experiences. Here is a visual breakdown of the underlying mechanics.

1

The Networked DOM

In MML, the Document Object Model (DOM) lives on the server, not the user's device. This single source of truth continuously synchronizes state to all connected clients. When a new user joins, they immediately receive the current state of the content.

SERVER
Client A
Client B
2

Event Propagation Loop

Interaction is handled authoritatively. When a user clicks an object, the event is sent to the server script. The server processes the logic, updates the document, and broadcasts the change to everyone simultaneously.

Server
LogicRunning...
Interaction
Logic
Broadcast
User A
User B
3

Markup to 3D Content

MML uses familiar HTML-like tags to define 3D objects. This approach works for both simple and extremely complex 3D scenes. The MML client has been implemented in multiple game engines/renderers including ThreeJS, Unreal Engine, and PlayCanvas.

<m-group>
<m-cube
/>
</m-group>

Ready to get started?

Join developers building the open metaverse with MML.