Skip to content

GrinlexGH/skylabs

Repository files navigation

🥼 Skylabs

Discord C++ Vulkan

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++.

📥 Cloning the Repository

This project uses Git Submodules. It is crucial to include them during the clone process.

✅ Correct way to clone

Use the --recursive flag to ensure all dependencies are downloaded:

git clone --recursive https://github.com/GrinlexGH/skylabs.git

⚠️ If you already cloned (without recursive)

If 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 --recursive

🛠️ Build Requirements

Ensure 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

⚙️ Configuration & Installation

1. Configure Conan Remotes

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 -f

Optional: 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-config

2. Install Dependencies & Compile

If 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-default

Tip

📂 Output Location: All compiled binaries will be placed in the .output folder.

📚 References & Resources

Useful links regarding the tech stack and concepts used in this project:

About

Custom Engine on SDL3

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •