Robin Krokfors

Game Programmer

GAME

WEB & APP

DEVELOPER

Data - RK01_About

Game Programmer specializing in graphics and performance, with experience across multiple engines and platforms. Extensive work optimizing memory and runtime performance for large open-world games, including continuous world streaming and balancing complex gameplay systems to meet console performance targets. Most recently, focused on Unreal Engine 5.

Wide view of Tyndalston with industrial buildings, elevated roads, and the city skyline.
Samson looking across the city skyline at night beside a car.
Nighttime overview of Tyndalston with illuminated roads, industrial buildings, and the skyline.
Samson walking along a city street at night with pedestrians nearby.
A vehicle flips during a crash on a city road, with sparks and debris.

SAMSON: A Tyndalston Story

Made with Unreal Engine 

I worked across engine and game code on the performance, streaming, memory use, rendering, and platform readiness of SAMSON: A Tyndalston Story. Much of this work involved tracing problems across system boundaries.

My contributions ranged from building runtime systems to profiling and tuning existing ones, adapting engine fixes, and tracking down production issues. The goal was to make a large Unreal Engine world run reliably within the CPU, GPU, and memory budgets of its target platforms.

Spite - Blood Relic

Made with Custom C++ Engine

This was the first game made at TGA where we made our own game engine, the game itself took a lot of inspiration from Diablo III.

During engine development I was mostly focused on the rendering subsystem as well as the UI system, more details about these areas in their respective sections. Aside from this I also implemented support for animating skinned meshes, helped with scene management, added support for text rendering with multi-channel signed distance field fonts and helped with various other parts of the engine as well.

I implemented various tools to speed up the development workflow both for me and others.

Rendering Improvements

Made with Custom C++ Engine

At the end of our second year at The Game Assembly we had a course where we were allowed to create almost anything we wanted. I was interested in exploring other rendering techniques than the deferred rendering pipeline we had created for our own engines. During development of our engine I spent a lot of time on the rendering system, during this time I stumbled upon several things that made the rendering code more complex and less streamlined than what I would have liked.

Because of this, I took this project as an opportunity to try out some more modern techniques that not only offer better performance in common demanding situations, but also streamline the rendering pipeline. And so, the goal of this project was clear, I would implement some techniques that would streamline the rendering pipeline and bring down the complexity, remove unnecessary state changes, bring down the required amounts of shader combinations and implement clustered shading.