- Home
- Docs
Guides to help you get started with MML
Getting Started: Hosting the MML Starter Project
Learn how to deploy the Starter Project.
Collision Events
Learn how to make MML content that can react to users colliding with it.
Getting Started: MML with React
Composability, reusability, and extensibility made easy.
All of the MML Elements with available attributes and examples.
<m-group>The
m-groupelement can contain other MML tags, allowing all of them to be transformed as single item.<m-cube>The
m-cubeelement is a primitive 3D cube that can be coloured. It is often used for debugging or initial development purposes.<m-sphere>The
m-sphereelement is a primitive 3D sphere that can be coloured. It is often used for debugging or initial development purposes.<m-cylinder>The
m-cylinderelement is a primitive 3D cylinder that can be coloured. It is often used for debugging or initial development purposes.<m-light>The
m-lightelement is a light that supports various types (e.g.point,spotlight) and can be coloured.<m-plane>The
m-planeelement is a primitive 3D plane that can be coloured.<m-model>The
m-modelelement is a 3D model. It can be used to load and display various 3D model file formats, such as OBJ, FBX, or GLTF, depending on the rendering engine being used. The model can be positioned, rotated, and scaled within the 3D scene. It also supports animations.<m-character>The
m-characterelement is a 3D character. It supports containing otherm-modelelements, allowing for composing a character from multiple models.<m-frame>The
m-frameelement is a 3D frame. It enables composing other MML documents into the document and transforming them as a unit.<m-audio>The
m-audioelement is used to play audio in a 3D scene.<m-image>The
m-imageelement is used to display an image in a 3D scene.<m-video>The
m-videoelement is used to display a video in a 3D scene.<m-label>The
m-labelelement is used to display text on a plane in a 3D scene.<m-position-probe>The
m-position-probeelement is used to request the position of a user (either camera or avatar depending upon the experience).<m-prompt>The
m-promptelement is used to request a string from the user when the element is clicked in a 3D scene.<m-link>The
m-linkelement is used to open a web address when the element is clicked in a 3D scene. The web address is opened in a new tab or window depending on the client implementation. Them-linkelement has no visual representation in the scene; clicking children of element activates the link.<m-interaction>The
m-interactionelement is used to describe an action that a user can take at a point in 3D space.<m-chat-probe>The
m-chat-probeelement is used to receive messages from a chat system. Which chat system that is depends on the client implementation.<m-attr-anim>The
m-attr-animelement is used to describe document time-synchronized changes to element attributes.<m-attr-lerp>The
m-attr-lerpelement is used to describe time-transitioned changes to element attributes.
All of the MML Event types and their properties.
ConnectionEventA class that extends Event |
Event.MMLChatEventA class that extends Event |
Event.MMLClickEventReceived when a user clicks on a 3D object.
MMLCollisionEndEventReceived when a user stops colliding with an element.
MMLCollisionMoveEventReceived when a user moves the collision point they are colliding at on an element.
MMLCollisionStartEventReceived when a user starts colliding with an element.
MMLInteractionEventReceived when a user interacts with an m-interaction.
MMLPositionEnterEventReceived when a user enters the range of an m-position-probe.
MMLPositionLeaveEventReceived when a user leaves the range of an m-position-probe after having entered.
MMLPositionMoveEventReceived when a user moves after having entered the range of an m-position-probe.
MMLPromptEventReceived when a user triggers a prompt with a value.
RemoteEventA class that extends Event |
Event.