Note
About this project This is my personal sandbox for testing modern C++ features, exploring project architectures, and experimenting with graphics programming.
🎯 Abstract Goal: To build a functional 3D game engine from scratch using C++.
This project uses Git Submodules. It is crucial to include them during the clone process.
Use the --recursive flag to ensure all dependencies are downloaded:
git clone --recursive https://github.com/GrinlexGH/skylabs.gitIf the folder is already on your disk but the dependencies or submodules folders are empty, run this command in the project root:
git submodule update --init --recursiveEnsure you have the following tools installed before compiling:
| Tool | Requirement |
|---|---|
| CMake | Recent version |
| C++ Compiler | Modern MSVC / GCC / Clang |
| Python | 3.x |
| Conan | 2.x |
| Vulkan SDK | Latest SDK |
This project relies on a custom Conan recipe repository.
Add the local recipe index:
conan remote add skylabs ./conan/conan-recipes -t local-recipes-index -fOptional: Install Global Config
Caution
Read before running: The command below will overwrite your global Conan configuration. Only use this if you want to sync with my specific environment settings.
conan config install ./conan/conan-configIf you encounter any compilation issues, please open an Issue.
# Install dependencies
conan install . -r skylabs -r conancenter --build=missing
# Build the project
cmake --preset conan-defaultTip
📂 Output Location:
All compiled binaries will be placed in the .output folder.
Useful links regarding the tech stack and concepts used in this project: