Immersive Site
Near the beginning of 2020, I started dedicating freetime towards creating a 3D virtual venue space for myself and some friends. During this time, I explored services like Photon for Unity multiplayer development, then eventually NodeJS and TypeScript so I could write something myself. I became very interested in recreating or perhaps even evolving larger events that would typically be occurring in physical spaces, but digitally. The thought of creating a virtual venue I’m sure excited many like myself around the beginning of quarantine, and I used that excitement to learn how to make one. This evolved into me prototyping and pitching a virtual venue project for Midwest Immersive. We called this prototype the Immersive Site, which was a long term project that I researched and developed for around 7 months, before having to shift focus to other projects.
Description:
The Immersive Site was a general use virtual platform I was developing for Midwest Immersive. It’s a website that runs a Unity WebGL instance, as well as some extra JS code for better communication with other users. The Immersive Site’s use cases are wide - it could be used for a digital festival, a business convention, a digital office space, or even just as a hangout area. My goal with the project was to make something that could scale to as many users as possible - while running in a browser. Another goal was to keep it as a 3D first person experience. There are other platforms that manage to scale pretty far, but little are first person.
My Role:
I led the design and development of the Immersive Site. For most of my time with it, I was the only person working on it - which means that I handled code, design, UI, sound, visuals, etc (though later on more people joined the team and helped with backend development and visual polish).
Why it’s important:
A goal I had with the Immersive Site was to make something that helped people interact with each other. In a time where human-to-human communication was more important than ever, I couldn’t wait to travel and see friends in real life again at meetups and festivals. The Immersive Site wasn’t created as a cure-all solution for not having real life events - it was designed to fill a gap that had appeared. To encourage this human-to-human communication, we had versions that included different styles of voice and video chat. For example, one iteration put users in a video call together when their characters got close to each other in the app.
The Immersive Site was also a huge exploration into backend development for myself. If mass was a chance for me to practice developing web services and backend code, then the Immersive Site was a chance for me to see how far I could go with the skills that I had developed. It led to me developing a strong preference for TypeScript over pure NodeJS, it led to me becoming familiar with Amazon Web Services (beyond just using S3 and EC2), and it led to me learning a lot about how hard it is to architect a web service optimally.