ArkaPong is a hybrid game combining the classic "Arkanoid" (from NES) with "Pong". This game is being developed from scratch in C++ using SDL2 libraries. It is currently in pre-alpha stage and requires structural improvements. It should be compatible with Windows and any Linux distribution.
- Classic Arkanoid and Pong gameplay elements
- Single-player and multiplayer
- Power-ups and special abilities
- Multiple levels and game modes
- Git (optional)
- CMake (not required for Windows)
- Libraries:
- SDL2 (2.30.x)
- SDL2_mixer (2.8.x)
- SDL2_ttf (2.22.x)
- A compiler for C++ 17.
- Windows: MSVC v143-VS 2022
- Linux: GCC, Clang or any compatible with
CMakeLists.txt
.
- On Windows you can use VCPKG to download SDL2 packages.
-
Download source code or clone the repository with Git
git clone https://github.com/IgnacioVeiga/ArkaPong.git cd ArkaPong
-
- Linux: Use CMake (check the
CMakeLists.txt
file) and run:
cmake -B build cmake --build build
- Windows: Use Microsoft Visual Studio 2022 to build and run (using CMake in this case may give you an error when searching for SDL2 libraries, use VCPKG instead.).
- Linux: Use CMake (check the
-
Finally check the build folder, the executable should be accompanied by the “assets” folder in order to run.
If you use Visual Studio Code, you can configure CMake Tools to handle presets and simplify the configuration and compilation process.
To remove all files generated by CMake build, simply delete the build directory. Microsoft Visual Studio 2022 already has a clean function.
I'm very new to C/C++, so any contributions are welcome. Please fork the repository and create a pull request with your changes.
The ECS code was based on this post by Austin Morlan: https://austinmorlan.com/posts/entity_component_system/