A 2D game with an editor written in C++.
I wanted to focus on learning more about rendering, physics simulation and CMake
and thus this project was born.
- application (header/source)
- renderer (header/source)
- editor (header/source)
- actor (header/source)
- player (header/source)
✅ Renderer
✅ Input
✅ Physics
✅ Game Editor
✅ Component System
✅ Serialization
🔲 Documented setup steps
🔲 github actions pipeline
🔲 I do NOT LIKE!!!!! the vcpkg dependency, might remove that (on hold for now)
🔲 Projectile collision (for player weapon 💥)
🔲 Movable enemies
🔲 Behaviour trees
🔲 Network replication (?)
🔲 Font rendering
🔲 tracy as dependency
🔲 Fix ANNOYING!!! auto include with CMake extension in Visual Studio
Clone the repo and setup all submodules.
git clone --recursive https://github.com/lukkelele/platformer2d
Make sure to run git submodule update --init --recursive if the repo is cloned without the --recursive flag.
Run the setup script.
./scripts/setup.sh
Manual installation is only needed if the setup script has not been run!
The project is dependent on several external libraries.
Most dependencies are submodules but some need manual installation.
Make sure to run the setup script to do the steps for you.
The files for glad need to be generated.
Use the build_glad.sh script in the scripts directory or run the generation code.
# OpenGL 4.6
python -m pip install glad --break-system-packages
python -m glad --profile=core --api=gl=4.6 --generator=c --out-path=modules/glad



