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 submodule 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 Latest version
C++ Compiler Latest MSVC / GCC / Clang
Python 3.x
Conan 2.x
Vulkan SDK Latest SDK (only slang)
patchelf Latest (only for linux)

⚙️ Configuration & Building

🔧 1. Configure Conan

This project uses a custom Conan recipe index.

Add the local remote:

conan remote add skylabs ./conan/conan-recipes -t local-recipes-index -f

Tip

The skylabs remote is required to resolve internal packages used by the project.


🌍 Optional: Install Global Conan Config

Caution

This will overwrite your global Conan configuration. Use it only if you want a fully reproducible environment identical to this project.

conan config install ./conan/conan-config/config

💻 2. Desktop Build

# Install dependencies
conan install . -r skylabs -r conancenter --build=missing

# Configure project
cmake --preset conan-default

# Build
cmake --build build

📱 3. Android Build

The Android pipeline is fully automated via Gradle - no manual Conan step required.

cd android
./gradlew assembleDebug

Tip

Gradle triggers Conan internally during the preBuild phase. It uses android-specific Conan profile (you can copy from my Conan config repo).

📚 References & Resources

About

Custom Engine on SDL3

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors