This project aims to create a decentralized metaverse.
The metaverse allows users to interact with virtual environments and objects in a distributed manner.
- IPFS: InterPlanetary File System (IPFS) is required for the content layer of the metaverse. Please add an environment variable so that the ipfs command can be used.
Please import the following assets before starting with the project:
- Runtime OBJ Importer: This asset enables runtime OBJ file importing into Unity.
- Starter Assets - ThirdPerson | Updates in new CharacterController package | Essentials | Unity Asset Store
-
To upload files to the virtual space, drag and drop them directly. (Please note that this will not work on UnityEditor.)
-
To add a component to an object, follow these steps:
- Select the object
- Press Shift + Click to bring up the component menu.
- Choose the desired component to add to the object.
The metaverse consists of two layers:
-
Content Layer:
- IPFS: The InterPlanetary File System (IPFS) is used for storing and sharing the content within the metaverse. It allows for distributed file storage and retrieval.
-
Realtime Layer:
- WebRTC: Web Real-Time Communication (WebRTC) is utilized for the realtime layer of the metaverse. It enables communication and synchronization between users in the virtual environment.
- Sync Object: Within the metaverse, objects can be synchronized in terms of their location and variables, allowing for interactions between users.
Additionally, Lua scripting can be used to add custom scripts to objects within the metaverse.
Anyone can participate to a project. For questions or code modifications, please send us an issue or pull request.