All Posts

2025

2024

PCG Difference Node: Detailed Breakdown

If you have spent any time using Unreal Engine’s Procedural Content Generation (PCG) system, you may have noticed that the difference node doesn’t always qui...

PSA: UE_LOG_REF is Deprecated

I was recently browsing through the UE 5.2 logging macros, and I noticed that UE_LOG_REF has been marked with “DO NOT USE”:

Custom Node: Pattern Filemerge

I recently ran into a situation where I needed to load a bunch of geometry data from multiple files, but the filenames did not match the required pattern for...

Creating a JSON Driven Topnet in Houdini

Last week I put together a project as a proof of concept for how to set up data driven PDG networks in Houdini. The general goal was to create a tool in Houd...

2023

Handgun Project: Troubleshooting

I recently completed Eugene Petrov’s excellent 3D tutorial for a 9mm handgun (available on Gumroad or Flipped Normals). This post is a dump of all the notes ...

UE Widget Focus vs Hover States

One major confusion I’ve had while working with Unreal Engine widgets is how UE handles widget focus vs widget hover states. If you’ve spent any time working...

Gameplay Ability System (GAS) in UE5

At the start of this year, I spent several months studying the Gameplay Ability System (GAS) in UE5. I wanted to evaluate its usefulness for both singleplaye...

2022

2022 Epic Mega Jam

Last week, I participated in my first game jam- the 2022 Epic Mega Jam which is the official game jam of Unreal Engine. The theme for this year’s jam was as ...

My First Unity Game

I recently spent some time putting together this Lunar Lander clone in unity. I made the lander sprite and the animated star sprites in aseprite.