Inspiration

EncounterVR was inspired by Spatial, a virtual tool to interact with friends or family. The avatar aspect of EncounterVR was inspired by Zoom, and Google Meets. The meeting environments were inspired by the environments of OfficeVR.

What it does

EncounterVR is a virtual meeting space that simulates the conditions of an in-person meeting. A user joins a virtual meeting room using a meeting code and is entered into their virtual meeting environment. The meeting environment is a 3d meeting room with a video feed to show different users using their camera. Users can talk using their microphones and interact with each other in the meeting room. They can also interact with the virtual tools built into their meeting rooms for more productive meetings. EncounterVr tried to stimulate the most realistic possible meeting environment while staying completely virtual.

How I built it

I built the WebVR aspect of EncounterVR using Three.js (https://threejs.org/), and A-frame (https://aframe.io/). The front end of the website was created with html, css, react, boostrap, javascript, and jquery. Ther server-side and back-end of EncounterVR was built with node.js, socket.io, json, and php.

Challenges we ran into

A few challenges I ran into was that my multiplayer room code was not working with the newest versions of Three.js and A-frame. The problem with this is the code couldn't run on a VR headset such as the Occulus quest. Eventually the problem was fixed however. Another problem was using both audio and video in a WebVR environment. The problem was solved creating two tabs and embedding the voice chat on one while keeping the scene to use only the camera.

Accomplishments that we're proud of

A few features and accomplishments I'm very proud is first and foremost, the meeting environment. It took many gltf models to simulate a realistic, modern, yet inviting work environment and I'm pleased with the result. Another accomplishment I'm very proud of is showing the users face (if their camera is turned on) instead of just an avatar.

What I learned

Throughout this hackathon, I've learned a ton about back-end and server-side languages. Connecting multiple users in room was hard enough without having to update the players position constantly so that the position is always updating.

What's next for EncounterVR

The are many features that EncounterVR could potentially add in the future. A few include custom meeting environments, a more realistic player avatar, adding vr hands of browsing on a headset to interact with objects, and fixing some overall server bugs.

Share this project:

Updates