This is a mainly an educational engine for implementing various low-level systems and learning graphics programming in a cross-platform fashion.
Built with C++23, SDL3, and CMake.
I write articles about topics I explore in Hammered. Each article links to the version of the code it describes.
| Article | Code |
|---|---|
| CMake Setup — CMake build system with OpenGL and Vulkan backends | Browse code (branch) |
| Learning Multithreading With a Logger — Async logging and exploration of multithreading (Vulkan backend only) | Browse code (commit) |
Tip: The code links point to snapshots of the project at the time each article was written. The
mainbranch reflects the latest state of the engine.
The async logger snapshot includes Tracy profiler integration. To enable it, configure with RelWithDebInfo:
cmake -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo
cmake --build buildgit clone --recursive https://github.com/OneBogdan01/hammered.git
cd hammered
git submodule update --init
cmake -B build
cmake --build buildThe executable will be in build/bin/Debug/.
Note: Downloading the ZIP from GitHub won't work, submodules are not included in ZIP downloads. You need to clone the repo with git. I plan to fix this in the future using CMake Fetch.
This project is actively in development. I am currently restructuring it toward a modular architecture.