XRFoundation / XREngine

Ethereal Engine - Bringing us together on the open social spatial web. πŸ€– πŸš€ πŸ‘“ πŸ•ΉοΈ πŸ§‘πŸΏβ€πŸš€

Home Page:https://etherealengine.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ethereal Engine (XREngine)

Ethereal Engine logo

Manifest your dreams on the open social spatial web.

Table of Contents

Background

We (Ethereal Engine) believe that the Metaverse, Web AR, VR, and XR should be easy.

We want a Star Trek future where participating in immersive communication technology and shared simulations should be as easy and natural as making a website.

  • Includes a self-deployable platform, UI, worlds, avatars, and games
  • Fully customizable for any kind of game, social experience, event or spatial web app
  • User management, avatars and inventory with optional blockchain integration (see our Blockchain-in-a-Box repo)
  • Social features like chat, groups, friends, blocking and moderation
  • Complete world editing and administration
  • 2D, 3D and XR Avatars with full inverse kinematics and facial expressions
  • Fully networked physics using Rapier Physics
  • Voice and video over WebRTC
  • Instant login and location sharing with phone number or email
  • Modular- Use the engine, server, client, editor and scalable devops infrastructure as needed
  • OAuth login with Facebook, Google, Steam, Github or instant login with email or phone
  • WebGL client deployable to iOS, Android and desktop
  • Free, open source, MIT and Apache 2.0-licensed

Demos

Guest Demos

Host Demos

XRModule

Library of XRModules

Create composable plug-ins for Ethereal Engine scenes with XRModule Projects

Create XRModule Projects

XRModules are folders that contain all your custom code, assets and scenes. They are version controlled using git & github, and can be installed to any deployment with a single click. (more on that in the next chapter)

Pictured below is an example of 4 projects installed. By default, only the default-project is installed, which in a production environment is read only. You can find the default project under /packages/projects/default-project/

In a production environment, the builder process will install all projects according to the project database table and will download files from the storage provider. In a local development environment, the local file system is always the source of truth. Any project folders added or removed from the file system will be automatically added or removed from the database. This is to ensure there is no accidental loss of data, as these project folders are all git repositories.

Launch Ethereal Engine with Control Center Install - RECOMMENDED

Use Metaverse Control Plane Managment GUI

Best for simple self hosting, advanced editor content creation, and XRProject Pack Project development.

Advanced Development Install

Pre-Requisites

To install Ethereal Engine locally, the following pre-reqs are required.

  • Linux (many of us develop on Ubuntu), Mac OS X, or Windows (we recommend WSL2)
  • Node.js v16 or later (we recommend installing via nvm or asdf.)
  • C++ (for node-gyp), Python >=3.6 + PIP, make and other build tools, for compiling Mediasoup. Although most of Ethereal Engine is written in TypeScript, it uses a Mediasoup engine for WebRTC conferencing. See the Mediasoup install instructions for more details.
  • Docker. (Although Docker is technically optional, running Ethereal Engine requires starting up half a dozen different services, and using Docker Compose will make your life dramatically easier.)
  • MariaDB and Redis. (If you're using Docker, containers for MariaDB and Redis will automatically be started up.)

Getting Started

See the Installation instructions for more details.

Usage

Documentation

Contributing

Let's build it together

We believe that projects like this are extremely complex and difficult, and can only be built when large groups of people work together, out in the open. If you believe that your calling is to build a free, open network that everyone, everywhere can get value from, then you are welcome in our community, and we'll do our best to get you set up.

We are always hiring talented people who want to be leaders in what is to come. Inquire with anyone who seems like they know what's going on and they'll help you find who you need to talk to.

msf-member-badge-small

Join our Discord Discord Chat

Sponsorship Open Collective

License

MIT - Copyright (c) 2020-2022 Ethereal Engine team, formerly known as XREngine by XR Foundation

Release History and Author Archive

About

Ethereal Engine - Bringing us together on the open social spatial web. πŸ€– πŸš€ πŸ‘“ πŸ•ΉοΈ πŸ§‘πŸΏβ€πŸš€

https://etherealengine.org

License:Other


Languages

Language:TypeScript 86.5%Language:JavaScript 9.6%Language:SCSS 2.2%Language:Shell 0.5%Language:Mustache 0.3%Language:Go 0.2%Language:Pug 0.2%Language:HTML 0.1%Language:Dockerfile 0.1%Language:Smarty 0.1%Language:Swift 0.1%Language:Java 0.0%Language:PowerShell 0.0%Language:Ruby 0.0%