Cursed C++: reinterpret_cast (yes, all of it)
For a standard feature, it’s staggeringly easy to misuse and cause undefined behavior. So what does the standard guarantee it really can do?
Game Programmer
For a standard feature, it’s staggeringly easy to misuse and cause undefined behavior. So what does the standard guarantee it really can do?
Backporting a language feature from modern C++ to previous versions. It takes a bit of inspiration from C#, and a lot of preprocessor magic.
Demystifying SEGFAULT, and using standard C functions to resume execution for a limited time. Resource leaks are the least of our concerns when undefined behavior and instability await!
In this deep dive: How do cross-DLL function calls work, what do dllimport and dllexport do under the hood, and why does my compiler keep producing .libs next to my .dlls?
Ever needed to use some obscure library function only for it to be private?
Meet public_cast, an abomination unto good code that can see almost everything. Did I mention it’s entirely compliant with the C++ standard?
In this deep dive: CPU architecture basics, predicting function outcomes without calling them, and intercepting malloc.
The most fundamental problem of unloading and reloading code is that it can move–its contents, or the entire image. In this deep dive: vptrs, compiler design, and deducing object memory layouts.
A flexible, accessible RPG-style item ecosystem, published on GitHub and the Unity Asset Store.
A humorous, chaotic puzzler about a lumpy potato rolling around a magical house, built over the course of 2 semesters.
A proof-of-concept framework centered on plugins and seamless hot-reloading, with an extensive reflection and type erasure system.
A small experiment with tactile gunplay in VR, powered by modular systems I had previously written.
A first-person action 5v5 PvP FPS, similar to Capture the Flag. Players move faster when invading enemy territory, and become stronger in combat when defending.
Wave Function Collapse is a procedural content generation algorithm that uses an extension of constraint solving. For example, a cell’s possible values might be constrained by the cells adjacent to it, or there might be a global limit like only allowing one boss room and 2-4 treasure rooms per floor. This is not to be … Read more
An influence map is a grid-like data structure where each cell carries information about its surroundings. This is typically in terms of threat or safety, whether that be cover or line of sight on a target, squad cohesion or separation, range of potential attacks, or even emergency evasive action against incoming attacks. This makes it … Read more
Flow fields are a technique applicable when many units need to pathfind to the same location. It is an extension of traditional pathfinding algorithms, but instead of only calculating one path per unit it calculates a path for every cell on the grid, reusing information from other known paths. This has a high immediate cost, … Read more