A self-designed, built from the ground up 2D platformer game, using C and SDL3
A passion project where Kinomoto Sakura (from Cardcaptor Sakura) traverses the 2D platforming world, collecting Clow Cards to unlock new platforming abilities. The game is inspired by popular platformer games such as Super Paper Mario, Celeste, Super Mario Bros. Wonder, etc. (even though I never played the latter two). The engine is inspired by my friend, who works in Graphics and Physics Programming, specializing in raytracing and sampling lighting systems.
- C/C++ + SDL3 – I decided to go fully hands on with engine making and designing, one part as a passion project, and one as a way to learn the internal workings of popular game engines like Unity or Unreal.
- Custom Collision System – Supports AABB, OBB, Circle, and Capsule colliders, partially.
- Fixed & Variable Tick System – Smooth physics (60 FPS) + flexible animations.
Public Wiki is available here.
Prerequisites
- C++ Compiler (GCC or Clang): I do not recommend MSVC as MSVC is a lot more behind compared to GCC and Clang (unless you're on Windows). Make sure your compiler supports C++23 features.
- CMake
- vcpkg (Package manager for C/C++ projects):
- ZStandard
- GoogleTest
- SDL3
- SDL3_image
- SDL3_ttf
Clone this repository.
git clone https://github.com/hikawi/cc-sakuraPre-build the project
cmake -S . -B build -DCMAKE_TOOLCHAIN_FILE="path/to/vcpkg/buildsystems/vcpkg.cmake" -DCMAKE_CXX_COMPILER="path/to/cxx/compiler"
cmake --build build -jYou can run it directly (via double-clicking the binary file or through the command line), on the binary file generated in build/bin.
This is to show videos, or screenshots of what is being done as days passed.
