A toy OpenGL project in C++ using SDL2 and Eigen3
Here's a list of the external libraries used in this project.
Library | Description |
---|---|
SDL2 | Simple Direct Media Layer |
GLEW | The OpenGL Extension Wrangler Library |
Eigen3 | C++ template library for linear algebra |
EnTT | A fast and reliable entity component system (ECS) using modern C++ |
HFSM2 | High-Performance Hierarchical Finite State Machine Framework |
Dear ImGui | Bloat-free Graphical User interface for C++ |
ImPlot | Plotting library for Dear ImGui |
Assimp | Open-Asset-Importer-Library |
Alure | A C++ utility library for OpenAL |
stb_image | Single-file public domain C/C++ library for loading images |
yaml-cpp | A YAML parser and emitter in C++ |
This assumes you are on a Linux system using the apt package manager.
Binary dependencies can be installed easily via apt.
sudo apt install build-essential cmake libsdl2-dev libglew-dev libeigen3-dev libassimp-dev libyaml-cpp-dev \
libopenal-dev libvorbis-dev libopusfile-dev libsndfile1-dev libompl-dev
Execute the following to clone and build the project.
git clone --recursive https://github.com/danielcranston/AWingAlliance
mkdir AWingAlliance/build && cd AWingAlliance/build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j
Run the main executable with ./awing
from the build
folder.