Theatre of Mind is a 2D puzzle-platformer prototype built in Unity. The player explores different layers of their own psyche, solving puzzles and overcoming hazards to collect shards and restore a shattered mirror — a metaphor for processing inner trauma.
The game combines classic platforming with unique mechanics like level-layer switching. This was my first serious team project with six members, where I contributed to story development, level design, programming of core mechanics, shader work, menu design, and polish across all areas.
Role: Story, Coding, Game Logic, Level Design, Shaders, Menu design & Polishing within a team of 6
Languages & Tools used: C# within Unity as engine, Inkscape for art and Wwise for audio
Development time: ~4 weeks
Platform: Windows (PC) and Mac
Language: English
Pickups (Masks)
Hazards
Trailer
Gameplay video
Goal: Collect all shards in the level and use them to restore a mirror.
Mechanics:
Layer-switching: Jump between two mental layers (E/Q).
Masks & Eyes: Masks allow passing through light beams once, then vanish. Some beams can be toggled with switches.
Hazards:
Spikes instantly kill and reset the player.
Grabbers (black arms) pull the player into spikes if caught.
Puzzles: Navigate hazards, switches, and pickups across both layers to complete the level.
A/D — Move left or right
E/Q — Switch layer forward/backward
Space — (Double) Jump
R — Resets the level
ESC — Return to menu
Core Mechanics: Jump & run, collecting pickups
Systems: Menu system, layer-switch, different pickup behaviour, hazards, story progression
Polish: Soundeffects, lights, shaders, eye behaviour
Designing a dual-layer level system with consistent collision and logic
Implementing one-time use mechanics without breaking game flow
Integrating shaders for atmosphere in a 2D Unity game
Managing scope and teamwork within a 5-person group for the first time
This was my first larger-scale team project and also my first serious Unity game. While code quality and architecture could have been better planned, I gained valuable experience in working collaboratively in a five-person team, where integrating different disciplines like art, sound, and code was key to shipping a playable prototype under time pressure.
I learned first-hand how crucial early planning and clean architecture are for team projects, and how scope needs to be balanced realistically against the available time. Beyond core gameplay programming, I also explored shaders, audio integration via Wwise, and polishing UI/menus, which gave me valuable practice in contributing across multiple areas. Overall, the project showed me how to adapt flexibly, improve communication, and approach technical challenges in a collaborative setting.