About Reel Run:

Reel Run is a third person beat-em-up made in Unreal Engine where you traverse through various themed films, fighting film burn enemies to break out of the film. The finished project was made by a team of 12 people over 32 weeks from August 2024 - May 2025

Sequence manager & Western film

Level sequence manager

The core of the gameplay flow is handled in every level through a level sequence manager, which is a Blueprint Actor with an array of level sequencers. The level sequencers sequentially handle cutscenes, enemy spawns, enemy AI acting, animations, and events in the level as the player clears enemies in each wave.

Live blueprint view of the SequenceMaster BP

Western Train level cart transitions

A small detail that was done in the train level was the camera transition between train car doors. An issue we had was that the player would walk between train carts and the camera would suddenly snap close to the character multiple times as they passed through each train cart, which disrupted immersion and concerned our team’s creative leads.

Using a trace, I check the height over the player’s head from the camera to the player, and funnel the camera in as they approach the doors. This creates a seamless transition between the train doors and prevents immersion from being broken.

Horror Film Tech

Gerstner Wave Water material

For the horror level’s lake, I set up a material that uses a Gerstner formula to create stylized water waves in the lake. The parameters can be modified and customized on a material instance.

Live blueprint view of the Gerstner Wave water material Blueprint

Hanging Lights construction Script

A level designer needed to create a long chain of hanging lights throughout the entire horror map. The horror map was very sizable, and would throttle the level designer’s time if they had to set them up hand by hand.

To help streamline development on the lighting in the horror, I set up a Construction Script for hanging lights that allows the designer to drag out new sections of the hanging lights with ease, automatically populating with optimized point lights and emissive lightbulbs.

Live blueprint view of the hanging lights construction script

Romance film Boss

Disco floor tile material

One of the challenges I came across in Reel Run was a disco floor for a boss level. We wanted the tiles to react to the beat as well as the boss’s attacks. Originally this was attempted in a Blueprint, which turned out to be both difficult to modify, and not versatile enough.

To solve these issues, I set up a material that uses a Material Parameter Collection and Distance Fields to allow more versatility. Using simple hidden geometrical shapes, we can create any pattern on the disco floor in real-time by spawning the shape and moving it.

Live blueprint view of the Material Blueprint for the disco floor tiles

Disco Tile Construction Script

Live blueprint view of the Constuction Script used for disco floor population

Post Mortem

This was the largest project that I have been a part of. Throughout this project, I gained significant experience in collaborating with a team and I learned a lot about how to work efficiently in Unreal Engine. Some of the most significant skills I learned in my time working on this project are graphics programming and GPU optimizations. Carefully considering what can be done one the GPU can significantly improve performance and simultaneously boost the looks of a project at the same time.