Game Developer / specialized in UI Programming

My Roles
UI Programmer, UX Designer,
Game Designer
Task
In the 4th semester we were given the task to develop a singe player game, which has high production value.
Description
Helsing is a retro 3D fast paced action first-person shooter with rogue-lite elements set in a dark gothic castle inspired by the Doom series.
The player takes the role of the vampire Helsing, who is sent on a holy mission by the church to hunt down Dracula.
Additional info
Developed within 5 months with Unreal Engine 4 in the 4th semester in 2021.
Overview
To get an impression of the game you can watch the gameplay video or listen to the soundtrack found below the video.
Warning
Loud audio!
Warning
Loud audio!
While learning how the UI works, I noticed that it is much easier to access the settings and that Unreal already provides many features.
Thanks to that I was able to implement many more settings compared to the previous projects.
After that I started implementing graphic settings, where Unreal provides several helpful nodes.
The user can only select supported resolutions of his screen, select the window mode and choose if V-Sync should be enabled or not.
Increasing or decreasing the FOV was essential, since many other shooters have this option implemented.
I already have worked with sound mixers and sound classes in Unity 5 so setting the foundations of the sound settings were no problem.
Saving the values were different in Unreal and I have never done that before so I searched the documentation and learned that you can create a game slot, in which you can save these values.
My tasks
It was the first time working with the Unreal Engine 4, thus I had to completely learn how building UI works here.
Previously working with Unity 5 has helped me to rather quickly understand the Unreal UMG UI Widget Designer.
First I started creating the 3D menu widget as a prefab, which has a camera that renders the widget and is adjustable.
The camera transition between the different menu states uses camera blending and a custom event.
To avoid that the player could click on buttons that he is not meant to click on I only enabled the actor collision of the currently show menu widget.
FPS limiting and the brightness of the game can also be changed by the user.
Interchangeable controls was the hardest and most time consuming task, since I have ran into several bugs and issues but thankfully it worked properly after some time.
In comparison changing the mouse sensitivity was rather easy and quickly done.
Hereafter I implemented the HUD on/off toggle and started with the pause menu.
The pause menu includes of course pausing the game and audio, enabling the player to adjust the settings and going back to the main menu.
Nearly done finished I cleaned up my code, helped my team mates with their issues and set up the music and SFX.
In the end I helped making the necessary documents for the project and preparing the presentation.