...modding DLSS to a game that really, really didn't want it...
Plot twist: I got it working.
Bigger plot twist: it didn't matter.
It started the way all great decisions start — 2am, staring at a frame counter, thinking "my GPU is bored. Surely an AI upscaler fixes this."
Cool. Simple. What could go wrong.
Everything. Everything could go wrong.
First, the game's own mod loader turned out to be… an empty function. A return; statement in a trench coat. "Insert mods here," the comment said. Then nothing. I had to sneak my code in through a side door before the game even woke up.
Then there was The Namespace. One wrong letter — one(!!11!) — and the entire patching system silently pretends you don't exist. I read a log file for an hour before I spotted it. Like finding a typo in a phone book. While blindfolded.
The day the upscaler finally ran, the screen went completely black. Not "a little broken." Black. "Did I just brick my monitor" black. Cause? A single missing texture flag. One boolean. It cost me an evening and most of my dignity.
Then — triumph. Real upscale, frame by frame, every input wired up. I could see it working. I was a certified genius. Even opened a bottle of beer. Happiness. For about ten seconds.
Because the fps counter didn't move. At all. I cranked the internal resolution down to one-ninth of native — basically rendering a postage stamp — and the counter didn't flinch.
That's when it clicked: the GPU was never the problem. It was out there, humming, barely warmed up, while the CPU was doing all the heavy lifting the whole time. The engine is just… CPU-bound. It doesn't care how clever my upscaler is.
So I built a complete, working DLSS integration — capture, upscale, present, the entire pipeline — and it changes absolutely nothing. I optimized the wrong half of the computer. 😅
The real lesson?
"It's probably the CPU" is the most boring, most true sentence in performance work. Before you spend days being a hero, spend two minutes asking which bottleneck you're actually fighting. The fanciest solution in the world can't help a component that isn't the limit.
I now know more about this game's renderer than is medically advisable, I have a deep new respect for profiling before building, and my dignity is still out there somewhere — last seen in a log file, missing.
On to the next adventure in making games I love — better. (Better?!) 🚀
Whether it's game modding, web performance, or a full-stack application — I'll help you find the right solution. Free consultation.