// the find
OneLoneCoder/olcPixelGameEngine
The official distribution of olcPixelGameEngine, a tool used in javidx9's YouTube videos and projects
A single-header C++ framework for pixel drawing, simple UI and small game prototypes, maintained by javidx9 as the engine behind his YouTube series. It is aimed at students, hobbyists and anyone who wants a window and a framebuffer running in a few dozen lines without choosing a graphics stack first.
- The engine is one file, olcPixelGameEngine.h. Extensions and utilities are separate optional headers, so there is no build system to configure before the first pixel is drawn.
- The OnUserCreate and OnUserUpdate model is about as small as a windowed graphics API gets, which is why it works for teaching. The examples cover animation, a 2D camera, shaders and hardware 3D, so you can see how far the pattern stretches before you outgrow it.
- The extensions are split by concern (Graphics3D, Network, Sound, Shaders, QuickGUI), so a project only pulls in the parts it uses.
- Documentation lives on the GitHub wiki, not in the repo. The code and its docs can drift apart, and an offline or archived copy is harder to get.
- The platform support section is hedged in ways that are hard to act on. macOS is 'coming soon to official' and only available from a Contributors branch, so anyone on a Mac has to dig through contributions before the header works for them.
- The README's adoption claims ('used by 100s, if not 1000s') are not backed by anything in the repo. The last push was 2025-09-26, so the project has been quiet for about a year as of today. Also, a single header this large means long compile times on every translation unit and no real module boundary, so anything beyond a prototype will need its own structure.