

Dover Kent MPO VR Experience
Synopsis
This is an interactive VR game built with Unity for Meta Quest 2 & 3 for our clients at the Dover/Kent Metropolitan Planning Organization (DKMPO).
Players choose between 3 different modules made to heighten awareness and encourage interest in a city planning career in Kent County, Delaware:
-
Money Game: Short game where players decide where to spend DKMPO's city budget over the next 25 years.
-
Think Like a Planner: Sandbox where players build their own streetscape from scratch.
-
Safety: Driving sim putting players behind the wheel, quizzing them on their drive throughout.​
My Roles
UI/UX Development
Gameplay Systems
Debugging & Quality Assurance
Team Size
3
Development Time
Nov 2024 - May 2025
Tools
Unity, C#, VR, GitHub, Trello
UI/UX Polishes
I worked closely with a UI/UX designer to bring many improvements to these modules. We made drastic improvements to all interactions by implementing instant visual and audio cues to every single thing the player can interact with like buttons and interactable items. These improvements gave the project that professional polish it was lacking in the prototyping stage it existed in when I was onboarded.


Money Game - Feb, 2025

Money Game - April, 2025


Dialogue Subtitle Revamp for VR
A continuation of my UI/UX system improvements, I rebuilt the project's subtitle display system to be much more friendly to the VR medium.
Previously, dialogue subtitles only existed as a stationary world text that was somewhat difficult to notice and follow.
I added adaptive behavior to this display that causes the subtitles to float toward the player's view as they look around so that it's always there for them to read without blocking their view.
Players had a much easier time not only noticing the subtitles, but reading them as well. They never felt confused about what was happening in the experience.
Tutorial System
These modules used to lack player onboarding, leaving players confused when beginning a module. I implemented a tutorial scripting system that can be used to create custom tutorial sequences.
​
This system is especially flexible due to the ability to tie branching tutorials to custom events; for example, if the player makes a mistake that breaks the main tutorial sequence, the system elegantly handles this by allowing you to tie a separate tutorial sequence to this event to bring the player back on track.
​
Lastly, this system is modular, existing completely independent of the rest of the game so it can be added in or taken out completely without breaking anything due to its event-driven nature.


Part of the Tutorial for Think Like A Planner, designed by our UI/UX designer and implemented by me.

Code Scalability
Initially, most aspects of the modules' architecture were hard-coded to work in a specific way, requiring a cascade of time-consuming code changes when something was added, changed, or removed. I rewrote much of this code to be more modular and scalable by making it more event-driven and reducing dependencies between components.
​​
As a result, project iteration speeds increased drastically. We frequently completed tasks 1-3 days before their deadlines, allowing us to tackle many polishes and stretch goals we initially did not expect to have time to address.
Performance Optimization
Ensuring a high, stable framerate is critical for VR to avoid motion sickness. The Money Game module was running extremely slow at roughly 15 FPS on a Quest 2 when I was brought onto the project.
​
Through the use of Unity's profiling tools, I quickly found the issue to be related to the overcomplexity of the scene causing too many draw calls. Fortunately, I exploited the fact that the player is never expected to move much to significantly reduce the scene's complexity without any of these changes being perceivable.
As a result, this module's framerate increased to a stable 72 FPS, the game's max refresh rate, and an increase of almost 500% from where it was initially. No perceivable visual quality was lost.
​
The following images demonstrate the performance increase on a Quest 3, running the unoptimized Feb 2025 build at 40 FPS as it naturally performs better than a Quest 2, so the increase isn't as drastic but still quite noticeable. What's important is that the GPU bottleneck is completely eliminated.


Feb 2025 Build (On a Quest 3)
