Hey, I’m Pavlo 👋

Developer and engineer. I build a game engine in C/C++ (Kaban Engine), design machines that run in production (Golf Ball Counter), and write about how it all works. See Projects and About.

Projects: Games Now Live Outside the Engine

This is the last of three catch-up posts, after the asset system and the platform layer. It’s about the change that the other two were leading up to: games are no longer part of the engine. They are projects that the editor builds, runs, and hot reloads. The Problem In the asset system post I described how Arkham ended up compiled directly into the engine after my first attempt at loading it as a module. That kept me productive for a while, but it meant the engine had an Arkham editor mode, Arkham game state, Arkham assets, and a “Play Game” button that only worked for one game. Starting a second game would have meant adding all of that again. ...

October 20, 2026 · 6 min · 1251 words · pvlso

Rewriting the Platform Layer: GLFW, Linux, and a Second Window

This is the second of three catch-up posts. The first one wrapped up the asset system. This one is about the platform layer, the part of the engine that talks to the operating system, which I rewrote almost completely this month. How It Started It started small. I wanted the debug and profiler information in a separate window, so that it wouldn’t cover the editor. At the same time I was porting the engine to Linux, using GLFW for windows and input. A while ago I already used GLFW in an earlier refactor, but the Windows build still ran on the original win32 layer that came from Handmade Hero, and the GLFW layer was mostly a copy of it with Linux bits added. ...

October 20, 2026 · 6 min · 1154 words · pvlso

Finishing the Asset System

In the last post I said that I would write a dedicated post about the asset system once it was finished. The rewrite was finished at the end of December, followed by a couple of weeks of work on tags in January, and then the engine sat untouched for most of the year. Since then a lot has changed, so I’m splitting the catch-up into three posts. This one closes the asset system chapter, the next one is about the new platform layer, and the last one is about how games are built on top of the engine now. ...

October 20, 2026 · 6 min · 1198 words · pvlso

Reworking the Asset System (and Rethinking the Engine)

Before making Kaban Engine public, I started reworking the asset system. What was supposed to be a small, focused change turned into a larger cleanup pass, because once I touched it, several weak spots became obvious. The original goal was simple: end up with a built asset file that the game can load quickly and query efficiently. That meant tightening definitions, removing ambiguity, and enforcing rules. Tags The first thing I tackled was the tag system. ...

December 18, 2025 · 5 min · 983 words · pvlso

Kaban Engine Devlog – The Engine Is Now Public

A stubborn attempt to build a game engine from scratch. Introduction After several years of learning, experimenting, and slowly turning a Handmade Hero practice project into something independent, Kaban Engine is now public. It is early, imperfect, and incomplete, but it represents a real foundation to build on. The goal of publishing it now is not to claim it’s ready, but to let the development become open and visible. REPO ...

November 25, 2025 · 3 min · 484 words · pvlso