/SwarmMusic2

A new version of Swarm Music

Primary LanguageC++GNU General Public License v3.0GPL-3.0

SwarmMusic2

A new version of Swarm Music

Please also refer to the WIP Sparse Array ECS implementation in the sparse_array_ecs branch.

Previous version in will remain in a separate repo for archival purposes. In there you can find a short presentation with some background and a functionality showcase of this app.

The version found here is intended to be an experiment, a review of the original project after some professional experience and how I could use that to improve this project. Further improvements are planned, particularly on the interpretative side of the app (the music generation).

This version of the project also served as the basis for some modern OpenGL learning.

What's new

Changes from the previous version include

  • New libraries for the UI (Nuklear) and graphics (GLFW, GLAD)
  • Changes to the code structure (e.g. new class for a Scale)
  • Code base improvements from usage of code quality tools

Dependencies

You will need autoconf and make to compile Synthesis Toolkit.

cmake is also needed to compile the app itself.

How to run

Clone this repo with --recurse-submodules to get GLFW and STK

Run the following commands to build the app

./stk.sh

mkdir build

cd build

cmake ..

make

Run the app from the project root with bin/swarmMusic

Screenshots

New UI