Skip to content

Immersive infrastructure for everyone. Everything you need to build and deploy scalable realtime 3D social apps and more. πŸ€– πŸš€ πŸ‘“ πŸš€ πŸ•ΉοΈ πŸš€ πŸ§‘πŸΏβ€πŸš€

License

Notifications You must be signed in to change notification settings

Mustafa1845/XREngine

Β 
Β 

Repository files navigation

Ethereal Engine (XREngine)

Ethereal Engine logo light mode

Ethereal Engine logo dark mode

Manifest your dreams on the open social spatial web.

Table of Contents

Background

Universal.Volumetric.Video.Web.Player.mp4

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 PhysX compiled to wasm
  • 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

XRE XRModule

Create composable plug-ins for XREngine scenes with 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 XREngine with Control Center Install - RECOMMENDED

Best for simple self hosting, advanced editor content creation, and XRE 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 XREngine 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 XREngine 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.

License

MIT - Copyright (c) 2020-2022 HyperConstruct

Release History and Author Archive

About

Immersive infrastructure for everyone. Everything you need to build and deploy scalable realtime 3D social apps and more. πŸ€– πŸš€ πŸ‘“ πŸš€ πŸ•ΉοΈ πŸš€ πŸ§‘πŸΏβ€πŸš€

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • TypeScript 87.4%
  • JavaScript 7.8%
  • SCSS 2.8%
  • Shell 0.7%
  • Mustache 0.3%
  • Go 0.3%
  • Other 0.7%