Work I did for Malformation Games 2022 on Ground Zero

Code work

Ground Zero is a survival horror game, that is running on pre-rendered backgrounds with very few assets actually rendering in 3D, giving a nod to how old Resident Evil games work.
I was tasked with writing the flashlight and how it is going to work in the game. The biggest obstacle for Malformation was that there is no integrated lighting solution for how to do that in Unreal Engine.

What I ended up doing is that I made use of Unreal Engines Render Targets to create a pipeline in C++ to write out images as assets. These images are then at runtime connected to cameras that use a custom written postprocessing pass that makes use of this pre-rendered GBuffer. So with the GBuffer textures and use of custom uniforms with the flashlight data for the material, I could write a light calculation in HLSL to reproject the flashlight.
TLDR the process looks like this:

  • In the editor set up custom cameras that render out Image assets
  • At runtime render a depth texture with a Render Target attached to the flashlight actor
  • Send the flashlight with a Material Parameter Collection with the previous depth texture
  • Using a custom HLSL node in the PostProcessing material recalculate the flashlight mask on the screeen
  • Using that flashlight mask, linearly inteprolate between a lit version of the background or an unlit version

Art

My task for making art for this game was to take the concept design for the first enemies and translating the concepts in to final assets. So this was a very exploratory process with a lot of back and forth between me and Malformation Games. The result was one boss and one standard enemy.