diff --git a/docs/00_overview/00_startHere.md b/docs/00_overview/00_startHere.md index ac6afd986974..2c298c83276c 100644 --- a/docs/00_overview/00_startHere.md +++ b/docs/00_overview/00_startHere.md @@ -3,25 +3,22 @@ id: overview.intro title: Overview slug: / --- - # Ethereal Engine -Ethereal Engine is a free, open, full-stack MMO engine that anyone can run for -any reason - to host events, make games, showcase art, or just to provide a space for your community. There are plenty of platforms on which you can spend a bit to have a world, but you can't be in complete control of the experience or customise it from the ground up. +Ethereal Engine is a free, open, full-stack MMO engine that anyone can run for any reason - to host events, make games, showcase art, or just to provide a space for your community. There are plenty of platforms on which you can spend a bit to have a world, but you can't be in complete control of the experience or customise it from the ground up. -When the Ethereal Engine stack is deployed, that stack is sovereign, open and cross -platform by default. Users can create any kind of game or experience with no limits. -With the tech that's being built now, users will be able to seamlessly travel -through portals from any worlds to any other world, on different servers, and have all -their data and identity travel with them. +When the Ethereal Engine stack is deployed, that stack is sovereign, open and cross platform by default. +Users can create any kind of game or experience with no limits. +With the tech that's being built now, users will be able to seamlessly travel through portals from any worlds to any other world, on different servers, +and have all their data and identity travel with them. -This technology is for everyone, but especially people who want to build or -belong to a community. +This technology is for everyone, but especially people who want to build or belong to a community. ![](./images/ethereal-engine.jpg) ## WebXR Engine -The core engine is the heart of Ethereal Engine. Based around the WebXR spec, brought to life with libraries such as [threejs](https://threejs.org/), [bitecs](https://github.com/NateTheGreatt/bitECS), [rapier.js](https://github.com/dimforge/rapier.js), [Mediasoup WebRTC](https://github.com/versatica/mediasoup), [reactjs](https://reactjs.org/) & [hookstatejs](https://hookstate.js.org/). With the latest understanding of Data-Oriented Design, ECS and Event-Sourcing paradigms, we have put together a robust MMO XR framework that rivals AAA capabilities, quality and speed. +The core engine is the heart of Ethereal Engine. Based around the WebXR spec, brought to life with libraries such as [threejs](https://threejs.org/), [bitecs](https://github.com/NateTheGreatt/bitECS), [rapier.js](https://github.com/dimforge/rapier.js), [Mediasoup WebRTC](https://github.com/versatica/mediasoup), [reactjs](https://reactjs.org/) & [hookstatejs](https://hookstate.js.org/). +With the latest understanding of Data-Oriented Design, ECS and Event-Sourcing paradigms, we have put together a robust MMO XR framework that rivals AAA capabilities, quality and speed. ![](./images/treehouse.jpeg) @@ -36,16 +33,27 @@ Running on the backend is a state of the art fullstack framework, template & dep ![](./images/backend-k8s.jpg) ## Ethereal Studio -The Studio sits on top of the engine, as a heavily modified version of [Mozilla Hubs' Spoke editor](https://hubs.mozilla.com/spoke). It has been transformed with the engine and the web app to provide a fast and comprehensive Content Management System, file browser, cloud edge caching, content pipeline tools and other creator tools. +The Studio is fully integrated with the engine. It is a heavily modified version of [Mozilla Hubs' Spoke editor](https://hubs.mozilla.com/spoke), that has been deeply transformed to provide a fast and comprehensive Content Management System, File Browser, Cloud Edge Caching, Content Pipeline Tools and other creator tools for Ethereal Engine. ![](./images/puttclub-editor.jpg) ## Project API The Project API is the core of what makes Ethereal Engine shine - the ability to load your own scenes, assets & code with a click of a button. Using github, we allow users to have fully version controlled access to extend the base functionality. You can see examples of the Project API in action [here](https://etherealengine.com/explore) and [here](https://github.com/EtherealEngine/ee-development-test-suite) - - -![](./images/project-api.jpg) +```ts +import type { ProjectConfigInterface } from '@etherealengine/projects/ProjectConfigInterface' + +const config: ProjectConfigInterface = { + onEvent: './projectEventHooks.ts', + thumbnail: '/static/etherealengine_thumbnail.jpg', + routes: { + '/examples': { + component: () => import('./examplesRoute') + } + } +} + +export default config +``` ## Stack Overview - ![](./images/stack.png) diff --git a/docs/01_gettingStarted/00_intro.md b/docs/01_gettingStarted/00_intro.md index 673a41f59574..773995780ca5 100644 --- a/docs/01_gettingStarted/00_intro.md +++ b/docs/01_gettingStarted/00_intro.md @@ -1,2 +1,9 @@ # Introduction -_This page will contain an Introduction to the Getting Started section._ + +_This page will contain an Introduction to the Getting Started section._ +_In the meantime, please refer to the [Manual](/docs/category/manual) section for more information._ diff --git a/docs/01_gettingStarted/01_guest.md b/docs/01_gettingStarted/01_guest.md index b51caf62d39d..bfa53b8d8b88 100644 --- a/docs/01_gettingStarted/01_guest.md +++ b/docs/01_gettingStarted/01_guest.md @@ -1,2 +1,8 @@ # Using the Engine -_This page will contain a guide on how to get started using Ethereal Engine as a Guest._ + +_This page will contain a guide on how to get started using Ethereal Engine as a Guest._ +_In the meantime, please refer to the [Manual/User](/docs/manual/guest/intro) section for more information._ diff --git a/docs/01_gettingStarted/02_creator.md b/docs/01_gettingStarted/02_creator.md index f1be9268cc6f..9ed51cf19e96 100644 --- a/docs/01_gettingStarted/02_creator.md +++ b/docs/01_gettingStarted/02_creator.md @@ -1,2 +1,8 @@ # Become a Creator -_This page will contain a guide on how to get started creating content in Ethereal Engine._ + +_This page will contain a guide on how to get started creating content in Ethereal Engine._ +_In the meantime, please refer to the [Manual/Creator](/docs/manual/creator/intro) section for more information._ diff --git a/docs/01_gettingStarted/03_developer.md b/docs/01_gettingStarted/03_developer.md index 0f5bae7ccd48..7bb369dfdbf4 100644 --- a/docs/01_gettingStarted/03_developer.md +++ b/docs/01_gettingStarted/03_developer.md @@ -1,4 +1,14 @@ # Become a Developer + _This page will contain a guide on how to get started programming with Ethereal Engine._ -_No-Code: Segway into the Behave Graph Section of the Developer Manual_ -_Typescript: Segway into the Developer Manual_ + +_In the meantime, please refer to the [Manual/Developer](/docs/manual/developer/intro) section for more information._ +_Ethereal Engine also has a NoCode alternative to programming, called [Behave Graph](/docs/manual/developer/behaveGraph)._ + diff --git a/docs/01_gettingStarted/04_host.md b/docs/01_gettingStarted/04_host.md index 73490a808464..4bb2d912b2f2 100644 --- a/docs/01_gettingStarted/04_host.md +++ b/docs/01_gettingStarted/04_host.md @@ -1,2 +1,9 @@ # Become a Host + _This page will contain a guide on how to get started hosting Ethereal Engine worlds/locations._ +_In the meantime, please refer to the [Manual/Hosting](/docs/manual/host/intro) section for more information._ + diff --git a/docs/03_manual/01_guest/00_intro.md b/docs/03_manual/01_guest/00_intro.md index 399852ee995a..c2eac42e2a86 100644 --- a/docs/03_manual/01_guest/00_intro.md +++ b/docs/03_manual/01_guest/00_intro.md @@ -1,3 +1,4 @@ # User Manual Whether you're a gamer, a shopper or just here to explore, Ethereal Engine has something for you. -_This section will explain everything that there is to know about using Ethereal Engine._ + +In this section you will learn everything that there is to know about using Ethereal Engine. diff --git a/docs/03_manual/01_guest/99_faq.md b/docs/03_manual/01_guest/99_faq.md index a4b9f8933a0c..53690aaeb3bf 100644 --- a/docs/03_manual/01_guest/99_faq.md +++ b/docs/03_manual/01_guest/99_faq.md @@ -1,14 +1,27 @@ # Frequently Asked Questions ## Is it free to use? -Ethereal Engine is itself an engine, used to create a variety of platforms. The engine itself is open source under a CPAL license so anyone can use the engine on their own device. Each creator has control over the access to individual experiences, which may be paid experiences (such as games). +Ethereal is a general purpose engine and platform that can be used by creators to provide access to fully customizable experiences. + +The engine itself is open source, under a `CPAL` license. Anyone can host Ethereal Engine for free in their own device. + +It is up to each creator to decide if the services they provide should be paid or free, and who has access to the experiences and services they provide. +Examples: +- Free access to virtual online shop, but buying items in its stores would be paid +- A VR book club community with weekly meetings that is completely free for everyone +- A videogame that is provided as a "pay once" experience +- A free-to-play videogame that anyone can play on their phone. ## Do I need a powerful computer? -Not at all! With graceful degredation, the environment will automatically adapt to ensure a balance between performance and quality. +Performance on each individual device will depend on its hardware and how each individual experience was created. Some experiences will require more resources than others. +But in all cases, Ethereal Engine will automatically adapt to your device to ensure a good balance between quality and performance. ## What devices do I need to use? Ethereal Engine is built to be compatible across all devices including desktop, mobile, tablet, VR, and AR devices. -Performance on individual devices depends on hardware performance and how you create each experience. + + + ## The world is not loading, what do I do? Try turning off ad blocker, and make sure your browser is up to date. + diff --git a/docs/03_manual/05_license.md b/docs/03_manual/05_license.md index a072a34d3508..2b8e1486e414 100644 --- a/docs/03_manual/05_license.md +++ b/docs/03_manual/05_license.md @@ -1,2 +1,8 @@ # License -_This page will contain Ethereal Engine's License and usage guidelines._ +Ethereal Engine is [open-source](https://github.com/EtherealEngine/etherealengine), under the terms and conditions of the [CPAL](https://github.com/EtherealEngine/etherealengine/blob/dev/LICENSE) license. +Attribution is required if you wish to use Ethereal Engine under [CPAL](https://github.com/EtherealEngine/etherealengine/blob/dev/LICENSE). +Please see the attribution guidelines in Ethereal Engine's [LICENSE](https://github.com/EtherealEngine/etherealengine/blob/dev/LICENSE) file. + +Other licensing options are available, please contact us for more information. + +[CPAL](https://github.com/EtherealEngine/etherealengine/blob/dev/LICENSE) - Copyright (c) 2021-2023 Ethereal Engine, formerly known as XREngine by XR Foundation diff --git a/docs/98_contributing/00_intro.md b/docs/98_contributing/00_intro.md index b94e31fa1f2b..ef367b0f790a 100644 --- a/docs/98_contributing/00_intro.md +++ b/docs/98_contributing/00_intro.md @@ -1,2 +1,46 @@ # Get Involved -_This page will contain Contributing Guidelines and resources._ + + +## Participate in the community +The easiest way to get involved is to participate in Ethereal Engine's community. +Join us on your favorite [community channel](../99_community/00_intro.md) and become a part of the conversation. +Ask any questions that you may have and/or help other users with their questions. + +## Create and Host your own worlds +Ethereal Engine is a platform aimed at helping you achieve your goals. +And nothing showcases a great tool better than some great projects made with it! + +Complete the [Getting Started](../01_gettingStarted/00_intro.md) tutorials, learn to use the engine with the [Ethereal Engine Manuals](/docs/category/manual), create a cool project that you love and then share it with the world. + + +## Promote Ethereal Engine +Talk about the engine with people you know. Let them know about those cool projects that you have created, or those locations that you like the most. Being a user and overall advocate of Ethereal Engine is a great way to help growing the community. + + +## Contribute to Ethereal Engine's development +Ethereal Engine is an open-source project, based on the [CPAL](https://github.com/EtherealEngine/etherealengine/blob/dev/LICENSE) license. +You can find the source code of the engine on Ethereal Engine's [GitHub](https://github.com/EtherealEngine/etherealengine) repository, and some guidelines on how to contribute to its codebase in the [Contributing](https://github.com/EtherealEngine/etherealengine#contributing) section of the repository's readme. + +## Testing and reporting issues +Our team is constantly on the lookout for potential issues during development, and we have a really high standard for Code Reviewing and QA _(Quality Assurance)_. But sometimes bugs can go unnoticed and sneak into release versions of the codebase. +Because of this, another great way to contribute is by reporting errors, problems or issues that may show up in different versions of Ethereal Engine. + +Search for the issue in our [Issues List](https://github.com/EtherealEngine/etherealengine/issues), and open a new one if you think that what you found has not been reported yet. + +## Contribute to Ethereal Engine's documentation +Documentation tasks are a great way to get started if you are new to the engine and/or development in general. + +If you are comfortable with code, the engine also uses `JSDoc` and `TypeDoc` for generating its [API documentation](https://etherealengine.github.io/etherealengine-docs/typedoc), which is generated form the source code of the main Ethereal Engine's [source code repository](https://github.com/EtherealEngine/etherealengine). + +For an easier task, the documentation website you are reading right now is maintained from its own [GitHub repository](https://github.com/EtherealEngine/etherealengine-docs). Find something that you think could be improved in this website, and either open an issue or send a PR with your proposed changes. + diff --git a/docs/99_community/00_intro.md b/docs/99_community/00_intro.md index f17beb9ee889..1552c5e517fb 100644 --- a/docs/99_community/00_intro.md +++ b/docs/99_community/00_intro.md @@ -1,5 +1,41 @@ # Community -_This page will contain Ethereal Engine's Community Resources and Information._ + -_current : Community channels._ -_future : Community content and assets_ +You can join Ethereal Engine's community on: +- [Twitter](https://twitter.com/xr_engine) +- [Facebook](https://www.facebook.com/xrengine/) +- [Discord](https://discord.gg/xrf) + +Feel free to ask any questions that may come up. +We are here to help! + + + + + + + + + + + + + + +