RType 1.2
Documentation for the RType project at EPITECH
RType

NEXO Logo

NEXO Engine

πŸ‘‹β€‹ Welcome to the NEXO Engine repository! This project is a collaborative effort to create a revolutionnary game engine. Our goal is to provide a robust, user-friendly, and efficient platform for game development in desktop as well as in virtual reality! πŸ€©βœ¨β€‹πŸš€β€‹

Build, test and Package Quality Gate Status Code Smells Coverage Lines of Code

Table of Contents

[!NOTE] Find the whole documentation on our website.

Project Overview

πŸ“Έβ€‹ Interface screenshot

Editor interface

πŸŽ₯ Quick videos of the game engine in action

https://github.com/user-attachments/assets/a91e61c3-b8a9-43d3-83c4-37fd02de2e7c

https://github.com/user-attachments/assets/281bec66-65cc-4467-aeb7-8f546dc3fb22

https://github.com/user-attachments/assets/ea92807b-da51-4fb6-bd1d-d3c9fadf0c13

[!WARNING] This project is still in development and is not yet ready for production use. Some features may change.

External Dependencies

To run this project, ensure you have the following:

  • CMake: Necessary for building the project from source. (version 3.28 or higher) install here
  • C++ Compiler: We recommend using GCC or Clang for Linux and MacOS, and MSVC for Windows.
  • Git: For cloning with submodules. install here
  • **.NET SDK 9.0**: Required for the C# scripting support. install here

Build the project

Cloning and building is a breeze:

1. Clone the repository with the submodules.

git clone --recurse-submodules https://github.com/NexoEngine/game-engine.git NEXO-Engine
cd NEXO-Engine

2. Run cmake to generate the build files.

Option1: Using CMake presets (automatic) [Recommended]

cmake --workflow --preset=build-debug

[!NOTE] There are several presets available: build-debug, build-release, build-coverage, minimal-build, test-debug, and test-coverage.

Option2: Using CMake Build (manual)

cmake -B build
cmake --build build

3. Launch the engine!

For Linux and MacOS:

./build/nexoEditor

For Windows:

./build/nexoEditor.exe

[!NOTE] For detailed instructions, visit our Installation Guide.

Install NEXO Engine

Install via CMake

First build the project as seen in the step Build the project. Then run the following command:

cmake --install build --prefix /path/to/install

This will install the NEXO Engine in the directory /path/to/install with all the necessary files.

Create an installer for Windows (NSIS)

[!WARNING] We assume here that you already ran the cmake command to generate the build files in the build directory.

To create an installer for Windows, you can use the NSIS installer.

  1. First install NSIS on your computer.
  2. Execute the following commands:
    cd build
    cpack -G NSIS -C Debug

Now you can run the generated installer to install the NEXO Engine on your computer.

./nexoEditor.exe

Create an installer for Linux (DEB)

[!WARNING] We assume here that you already ran the cmake command to generate the build files in the build directory.

cd build
cpack -G DEB

To install the generated package (on Ubuntu/Debian...), run the following command:

sudo dpkg -i NEXO-Engine-*-Linux.deb

Run the tests

In this project tests use the gtest library.

First build the tests:

cmake -B build -DNEXO_BUILD_TESTS=ON
cmake --build build

Then run the tests:

cd build
ctest -C Debug

Troubleshooting

If you encounter any issues, please refer to our Troubleshooting Guide.

The Team

NEXO Engine is brought to life by a dedicated team of fifth-year students from EPITECH Strasbourg:

Join the NEXO community

Check our web site to keep you up to date about the latest news about NEXO. Join the community to ask your questions or to talk with our developers. Visit our blog to find out more about how NEXO works.

Acknowledgements

This project is part of our curriculum and end of studies project, showcasing our collective skills in advanced software development with modern C++.

We thank Epitech for the opportunity to work on such an engaging project and for the support throughout our educational journey.

License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
For more information about the copyright of the project, please refer to the [COPYRIGHT](COPYRIGHT) file.
You can also find the license of the third-party libraries used in the project in the external/licenses directory.

[!TIP] For any license inquiry, please contact us at nexo.engine@gmail.com

How to extract the third-party licenses file

You can use the cmake install command:

cmake --install build --prefix /path/to/install --component generate-licenses

This will extract all licenses per third-party library in the /path/to/install/external/licenses directory.

[!NOTE] These licenses are automatically extracted from vcpkg, there might be missing third-party libraries.

How to generate the COPYRIGHT file

You can use the cmake install command:

cmake --install build --prefix /path/to/install --component generate-copyright

This will generate the COPYRIGHT file in the /path/to/install directory.

[!WARNING] By default the COPYRIGHT file is generated with some TODO:, the generator cannot always determine exact licenses for some files. Please check each entry for errors.