A Photo In Time is a game about a travelling photographer journeying to different worlds that have been frozen in time. Tasked with documenting each place and uncovering hidden secrets, the player explores a solarpunk-inspired cityscape called Solaris built from basic shapes and bold colours with comic book-style post-processing to make it pop.
I developed a full locomotion system for the third person character with omnidirectional inputs that change the character's animation states. The player character was created by 3D scanning my own face, refining it in Blender, and feeding it into the Metahuman plugin to produce a realistic AAA-quality character.
A key feature is the in-game photography system I coded from scratch the player can take pictures, review them in a photo gallery journal, and use the camera to progress through the world.
Documentation
Treatment document where I pitched my the idea for the game
Level design documentation on the level of Solaris
Weekly logs where i documented my progress, feedback and other thoughts on the project
A retrospective on what went well, what could've been better and the lessons I've learnt during the project
Post mortem video on what went well, what could've been better and the lessons I've learnt during the project
Behind the Scenes
Photography is a genuine hobby of mine. I own an Instax camera and one of my favourite things to do is wander to a random part of the city with a limited roll of film and try to find something worth capturing. That spirit of purposeful exploration with constraints fed directly into the game.
The "frozen in time" premise was also conceptually fitting: a polaroid or Instax photo is itself a single frozen moment given physical form in the real world. The world of Solaris being still and silent mirrors exactly what photography does it stops time and holds it.
Solarpunk is my favourite of the punk genres. I love its hopeful, utopian quality, and it creates an interesting tension with the unsettling stillness of a world frozen in time. Practically, I am not a game artist or technical artist, so building Solaris from simple shapes with bold colours and comic book post-processing was a way to make the important landmarks read clearly. If something was worth photographing, it needed to stand out immediately and that visual language made sure it did.
The camera mechanic was designed to be more than a feature, it is the engine of the game's exploration. Taking photographs fills out the player's journal, and the journal surfaces the main character's personal insights into the world: what he notices, what he is piecing together about why time froze. This creates a deliberate loop: exploration prompts you to take a photo, the photo unlocks a journal entry, the entry points you toward the next area worth exploring. Each part of the loop feeds the next.
This was my first major solo project in Unreal Engine 5, and the technical challenge I am most proud of solving was the polaroid system itself. Capturing a screenshot is straightforward using Unreal's built-in tools — the hard part was making that screenshot become a persistent virtual object that exists in the game world: something the player could view, that would populate the journal gallery, and that felt like a real photograph rather than just a UI element.
© Copyright Humza Mustafa 2026