Role: Project Manager, Researcher, Developer, Asset Manager
Timeline: October - December 2024
Context: Final project for CIM 458: Immersive Storytelling
Overview
"MILK" is a surreal VR experience that transforms a mundane grocery run into a mind-bending journey through alternate realities. You set out to buy milk, get literally sucked into it, and launch across bizarre worlds—from a galaxy called Milky Way #259 to a beach planet ruled by Steve Harvey minions.
The challenge: create a psychedelic VR experience that feels trippy without making players sick. VR makes it incredibly easy to accidentally trigger nausea or anxiety. We needed environments that felt distinctly unreal while maintaining enough stability for comfortable navigation.
As project manager and asset manager, I kept the team on track while building all 3D environments in Blender and Unity. With only one developer fighting endless VR bugs, we were out of scope from the start. We completed two out of three planned worlds—which felt like both victory and compromise.
The Problem
Ambitious multi-world VR game with massive resource constraints. One developer who'd never worked in VR, three complete worlds planned, complex interactions, chase sequences, reality-bending transitions. Every concept had to be filtered through "can we actually build this while debugging VR-specific issues?"
VR's unique design paradox: immersion is both your greatest tool and biggest risk. Small things that work in traditional games, like rapid camera movements, unexpected distortions, claustrophobic spaces, can trigger nausea or anxiety in VR.
How do you make something surreal in a good way? We wanted psychedelic visuals capturing altered states without soul-crushing intensity. We needed to feel trippy and unsettling without making players rip off the headset.
My Approach
World Progression Strategy
I structured the experience to gradually escalate from familiar reality into increasingly bizarre spaces. Starting with a realistic home and grocery store grounds players in normalcy before pulling the rug out. Each subsequent world gets progressively weirder, giving players time to adjust rather than throwing them into immediate chaos.
Environmental Design & Asset Management
I built all maps in 3D using Blender and exported them into Unity. Each world needed distinct visual identity while maintaining internal logic:
Home World (Reality): Realistic home with Family Feud on TV, then straightforward grocery store. Making this world feel grounded and boring was critical to selling the contrast later.
View of the living room.
Another view of the living room.
View of the grocery store. The desired milk is visible in the back. It's the last one!
Another view of the grocery store.
Milky Way #259 (First Unreality): Galaxy scene with revolving planets. I created a curve in Blender for the character to lock onto as they drift through space on a "lazy river." This introduces surrealism but maintains peaceful exploration. The gentle drift mechanic prevents motion sickness while feeling otherworldly.
A gif of the galaxy, minus the milky way curve.
Steve Harville Beach (Deep Unreality): Beach scene with buildings designed to feel like a real place, but something's fundamentally off. Added a winding bridge for chase gameplay. This world introduces tension but grounds it in a navigable physical environment. This world was unfinished unfortunately, but here's a quick shot.
Steve Harvey in Steve Harville.
VR Comfort Design
Every environmental choice considered player comfort. The lazy river keeps movement predictable. Realistic grounding gives players time to acclimate to controls. The winding bridge provides clear navigation paths rather than disorienting open spaces. We deliberately avoided sudden movements or chaotic elements that trigger motion sickness.
Scope Management
As project manager, I balanced ambitious vision with limitations. We planned three worlds but accepted that finishing two solid worlds beat rushing through three broken ones. This meant constantly reassessing priorities and making tough calls about essential versus nice-to-have features.
The Solution
Two Complete Worlds with Distinct Identities: Home World establishes normalcy and teaches VR basics. Milky Way #259 creates wonder through guided exploration. Steve Harville Beach (partial) introduces urgency through chase mechanics. Despite not finishing the third world interior, we delivered a playable demo that successfully conveyed our surreal, absurdist tone.
Transition Impact: My favorite detail is the contrast from incredibly mundane opening—watching Family Feud with your roommate—to the moment you get sucked into a carton of milk. That shift hits hard because we committed to making the beginning genuinely ordinary.
Smart Movement System: The curve-based movement in Milky Way solved multiple problems simultaneously. By locking players to a predefined path, we created exploration and discovery without disorientation. It's the difference between a guided tour through weirdness and being dropped in chaos—one's immersive, the other's nauseating.
Key Takeaways
Project management is about managing expectations, not just tasks. Keeping a team "on track" doesn't mean hitting every original goal. Sometimes it means recognizing early that you're out of scope and pivoting to what's achievable. I should have cut the third world earlier and focused on polishing the first two.
VR development is an entirely different beast. The technical challenges were relentless and unpredictable. Things that worked in 2D broke completely in VR. I gained massive respect for VR developers. It's not just making things look cool, it's understanding spatial computing, comfort mechanics, and a million technical considerations.
Building environments means thinking in player experience, not just aesthetics. Creating worlds wasn't about making things look good, but about guiding attention, preventing disorientation, maintaining performance, and supporting narrative. Every asset placement was a UX decision disguised as an art decision.
Sometimes "done" is better than "perfect." We didn't finish everything, and that initially felt like failure. But we created something weird and memorable that people genuinely enjoyed. Classmates who demoed it remembered it, talked about it, engaged with the concept. That's success, even if not the success we originally envisioned.
What I'd Do Differently
Cut scope earlier. Design for two solid worlds from the start instead of planning three and hoping. Build what you can execute, then add more if time allows. The third world was always a stretch goal masquerading as a requirement.
Front-load technical risk assessment. Have the developer prototype hardest challenges first—VR interactions, curve-based movement, chase mechanics—before building elaborate environments. Several times I created assets that didn't work with our limitations, meaning wasted effort and last-minute redesigns.
Build in more comfort playtesting. We tested functionality but didn't spend enough time testing VR comfort with diverse players. Some people are way more sensitive to motion than others. More varied testers giving comfort feedback throughout development would have been invaluable.
Like this project
Posted Jan 7, 2026
Surreal VR experience where a grocery run becomes a mind-bending journey. I managed the project and built all 3D environments as players explore bizarre worlds.