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 libboost-all-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.