Skip to content

math-araujo/gl-forge

Repository files navigation

gl-forge

Personal C++ OpenGL 4.6 framework, used as setup of graphics projects (rendering, animation, geometry).

Build

git clone https://github.com/math-araujo/gl-forge.git

cd gl-forge

# Run `cmake --list-presets` to see all available presets

# On Windows + MSVC
cmake --preset=msvc

cmake --build build --config Release

# Or on Linux
cmake --preset=unix

cmake --build build

Requirements

  • C++20 compiler

  • CMake $\geq$ 3.25

Dependencies

vcpkg is used as package manager for the external dependencies. See vcpkg.json file for the list of dependencies.

This framework fetchs and builds vcpkg in manifest mode during the configuration step, so there's no need to manually download it. To remove the dependencies, just delete the vcpkg and build directories; nothing is installed system-wide.

Usage

FetchContent

It's possible to consume gl-forge in an external project by using CMake FetchContent.

project(your-project LANGUAGES CXX)
include(FetchContent)
FetchContent_Declare(gl-forge
    GIT_REPOSITORY https://github.com/math-araujo/gl-forge.git
    GIT_TAG 14434df9d2ca8270cc0d785043cc7e01526788c0 # master branch
)
FetchContent_MakeAvailable(gl-forge)

Using multiple manifests is not supported by vcpkg. Therefore, for a project A to consume gl-forge, it needs its own vcpkg.json on the root (and apparently it's own vcpkg copy).

About

C++ OpenGL 4.6 framework for graphics projects

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published