Table of Contents
SNAKE_ECS was developed as an effort to learn the ECS architecture and the SDL2 library. In retrospective Snake was not the best choice for the ECS architecture, but it was an exercise to also make it fit in.
The parallel effort was also to have a better separation from the game and the engine. This game is an iteration on the development of my own engine built from scratch.
While developing this game I found myself struggling to animate the snake and my limited knowledge on C++ and animations fell short. I have some ideas on how to improve it, but I'll rethink this when I have more experience.
I also had some issues with the texture rendering using SDL2, there's some visual bugs that you can notice also in the preview, that I don't know the origin and I don't have the time to find out why.
- SDL2
- ECS (credit to the developer where I took the inspiration from)
To correctly build the project you will need to import to this libraries into the project (or use a package manager):
- SDL2
- SDL2_image
- SDL2_ttf
- SDL2_mixer
- nlohmann_json
And have installed CMake 3.26
and a C++ 20 compiler.
To build do:
cmake .
mkdir build
cd build
cmake --build .
To install the game do:
cd build
cmake --install .
Distributed under the MIT License. See MIT-LICENSE.txt
for more information.
Github profile: https://github.com/AlessandroRoic
Portfolio website: https://alessandroroic.github.io/