Our project is inspired by the recent boom in small-group social networking sites like Gather.town and Zoom helping individuals connect over distances in a more intimate manor. Knowing that our goals were to work with WebVR in some degree over the weekend, we made the natural move to combine the two goals and here we are!
What it does
Our web app allows for a game of chess to be played in a VR environment, accessible through browser on desktop and mobile devices. While chess is naturally a two player game, our innovation comes in having a shared, real-time playspace, providing an experience much more akin to the natural playing/viewing rhythm of a standard chess game.
How I built it
The platform heavily utilizes Aframe, a WebVR JS library for visual rendering, along with multiple open-sourced components to extend its base functionality, such as networked-aframe for our "room" functionality and Socket.io for real-time data transfer framework. Chess logic and move validation is provided by chess.js in a headless form, realized through our VR space. The whole project runs on a Node server instance, able to be containerized and deployed on most web server platforms available (as long as HTTPS is enabled, for WebVR security reasons).
Challenges I ran into
We struggled with time constraints, scope creep, and learning hurdles throughout this entire project. Having reached our deadline, we feel we could have better organized our expectations and time while building our project, knowing that this work is exploratory in nature for all members of our group (having never worked with the heavily technically complex libraries associated with WebVR before this!). Regardless, this hackathon has been an invaluable learning experience for our team members!
Accomplishments that I'm proud of
The first time we saw multiple members moving in a room in real-time through a VR space hosted on the web felt like technical wizardry, and a real breakthrough success in the project. It gave us a proper direction of what we wanted to build, and that vision held us through through the end.
What I learned
A strong guiding light in a project's vision is invaluable for development. Technology may change, processes may change, but the design goals (once set) provide an incredibly valuable safety net for when things break during crunch time! - Wade K. The possibilities for connective experiences on the web are infinite! We can take a simple idea and create a experience that can be shared between multiple users - Lawrence W.
What's next for Multiplayer VR Chess
Next, we want to build the community further. We want to create interaction circles so that users can only send their audio to other users closer to them. We would also like creating a more interactive scene where users can explore other rooms and possibly work towards creating a VR campus environment.