Exokit was created by Avaer Kazmer after creating Zeo, a WebVR minecraft clone. Exokit innovated a method to allow a user to run and composite multiple 3D sites at the same time.
It does this via Reality Layers, <iframe>โs with added ability to do volumetric manipulation. Reality Layers can interact with eachother via postMessage.
Manifesto
The future is immersive. The web is the best application platform. Javascript is the best ecosystem.
Content should be hardware agnostic. Tomorrow will have different hardware. VR and AR should be compatible.
It's not possible to do both 2D and 3D well. We don't do 2D. We can use an external 2D browser.
Use your favorite game engine. Exokit is not a game engine.
Legacy browser design choices don't make sense in XR.
Exokit empowers and connect apps, even (especially) if they aren't designed to cooperate.
Apps should run in "reality tabs", layers of reality that blend together.
The Exokit Engine is a native 3D XR web engine tht provides native hooks for WebGL, WebXR, WebVR, WebAudio, and other APIs used for immersive experiences.
The Exokit Engine is built using Node.js. It is primarily used to power 3d experiences, but can emulate 2D. For example, emulating a 2D web browser based on Chrome Embedded Framework to use for 2D interfaces.
Basically one can anchor WebXR apps on various layers of reality. The design is similar to layers of image editing software like Photoshop or Gimp, but applied to the 3D web.
Exokit Web is a Javascript library for composing multiple WebXR applications in a regular web page. It works in all web browsers, VR and AR headsets, with no dependencies.
Exokit Web can load sites made with any WebXR engine โ THREE.js, A-Frame, Babylon.js, JanusWeb, Unity. The core technology created for Exokit Web is XR IFrames.
Exokit Browser is a WebXR meta-browser that allows you to load and blend virtual worlds built on the WebVR and WebXR standards. It works in every browser, and every VR/AR headset.
Each xr-iframe in the browser has a sense of ownership now, it is either:
Owned by the world (indestructible, defined by the HTML that was loaded)
Owned by a player connected, which means it is bound to their lifetime
It works automatically, in multiplayer, for any transform and data you put on the xr-iframe. There are three ways to use the browser, which might break out into separate projects and interfaces because they are vastly different:
Local only (think a regular web browser)
Shared world channel, which is a shared persistent web site that anyone can connect to and be an avatar (think meta-Hubs)
Global land with a sense of transient ownership of every "reality tab"/xr-iframe (think dcl, or more vket)
Imagine taking a hologram from one place and broadcasting it to another place, without the other side having to have the content. This tool allows for textured meshes to be transmitted over the network as a remote reality, similar to how volumetric video works.
Point cloud sensing of the VR world with real-time voxelizing.
It can also mesh and even texture the mesh to do photogrammetry of any VR scene as well as collisions.
M3 meets every other week on Sundays at 6pm PST in Mozilla Hubs. Each M3 meet has a full write-up along with the archived agenda, full livestream VOD, clips of individual lightning talks and discussions, images taken in Hubs, and Hubs text log from Discord. See the schedule.
Avaer presenting on Metaverse technology in your Web Browser at M3
Special Events
Open Metaverse discussion: Unpacking Tim Sweeney's talk from SIGGRAPH 2019
WebXR universe made out of GitHub repositories. It's MIT licensed, built from community PRs, and of course accessible on every desktop, mobile, and VR/AR web browser.