-
-
Promo Image
-
Build a profile by tossing dumb movies in the trash.
-
You can do dumb things too...
-
Settings... for stuff...
-
Even a counter for you to wait in line (not actually any lines, nobody visits rental stores anymore)
-
So many cubbies with movies (horrible design for theft, but no-one stole in the 90s right!?!)
-
Just an old brick building straight from the 90s. Brutalism anyone?
-
Posters! On the Wall? How novel!
Inspiration
We are 90s kids at heart. We remember the distinct feeling of walking into a video rental store on a Friday night—walking down the aisles, analyzing cover art, and the tactile experience of shaking a box to see if the tape was actually inside. We wanted to recapture that serendipity. Modern streaming algorithms are efficient, but they lack the soul of physical browsing. Sim Video Zone was born from the desire to bring the physical joy of discovery back to the digital age.
What it does
Sim Video Zone transports users into a fully interactive, virtual video rental store populated with real movie metadata.
- Tactile Browsing: Users can walk the aisles and physically pick up movie cases.
- Rich Data: Inspecting a case reveals the movie's plot overview, displayed on the back cover (or as text if no back cover image is available), just like reading the back of a VHS or DVD box.
- Real-World Integration: Once a user makes a selection, they can bring the movie to the "counter." The system then displays the movie title and informs them where that specific title is currently available to stream or rent in the real world.
How we built it
The core experience was built using Unity for the immersive frontend, optimized for standalone VR headsets. However, the brains of the operation live in a custom Ruby on Rails API application.
We source our data from TMDB (The Movie Database). To make recommendations feel organic yet accurate, we utilize PostgreSQL with the pgvector extension for vector similarity search. Instead of simple tag matching, we generate embeddings for movie descriptions using Google's EmbeddingGemma model (300M parameters), which converts movie metadata—including plot summaries, genres, cast, and release years—into 768-dimensional vectors.
Mathematically, we represent the user's taste profile as a vector $U$ and a potential movie as vector $M$. We calculate the cosine similarity to predict the relevance $R$:
$$ R = \frac{U \cdot M}{|U| |M|} $$
where $U \cdot M$ is the dot product of the vectors and $|U|$ and $|M|$ are their respective magnitudes (L2 norms).
This allows for dynamic, context-aware recommendations. Importantly, we value privacy; we do not store PII (Personally Identifiable Information). A random device identifier acts as the session key, linking the user to their anonymous taste vector stored in the database.
Challenges we ran into
The biggest hurdle was performance versus density. We wanted the store to be "full to the brim" to mimic a real shop, but rendering hundreds of individual interactable objects with unique textures is expensive.
Getting this to run smoothly on the Meta Quest 2 hardware required significant optimization. We had to utilize texture atlasing, object pooling, and aggressive Level of Detail (LOD) management to keep draw calls low without making the shelves look empty or repetitive.
Accomplishments that we're proud of
We are incredibly proud of the "physics" of the store. Having hundreds of grabbable assets in a small space without crashing the framerate was a massive technical victory.
Furthermore, our backend architecture distinguishes this from a simple VR demo. The integration of Rails and vector embeddings means the store actually "learns" and rearranges itself subtly based on user preferences, bridging the gap between nostalgic UI and modern AI.
What we learned
We gained a deep appreciation for memory management within the Android/XR ecosystem. We learned that "magic tricks"—like dynamic texture streaming—are essential when trying to balance high-fidelity interaction with the hardware constraints of mobile VR processors.
What's next for Sim Video Zone
We have a roadmap full of features to deepen the immersion:
- New Locations: Different store layouts and aesthetics (e.g., a cyberpunk kiosk or a 1980s mall store).
- Portable Profiles: Giving users finer control over their taste vectors and allowing them to export that data.
- Self-Hosted Integration: We are currently exploring API integrations with
PlexandJellyfin. Our dream is to allow users to browse their own personal media server libraries using our VR interface, effectively turning their digital files back into physical objects on a shelf.Remember when picking a movie was an adventure? Not this soulless "doom-scrolling" through a flat list of thumbnails... files back into physical objects on a shelf.
Built With
- tmdb
- unity

Log in or sign up for Devpost to join the conversation.