HackMIT

Hackathons are always a blast, and HackMIT was no exception, but it was a different experience than most. All of the other hackathon projects I’ve worked on have been about taking a few things that our team is somewhat familiar with and combining them, but with HackMIT we were learning new technologies from scratch. That was still fun, don’t get me wrong, but it was a different kind of challenge than we were used to.

We had the exciting opportunity to develop for Microsoft’s HoloLens. The HoloLens is really cool, but because it’s bleeding-edge, it’s not the easiest to develop for. None of us had developed for it before which, compounded with the fact that we were not familiar with Unity made the hackathon more of a learning experience than a hacking experience.

What we did

Our original idea was to implement a clone of Splatoon (dubbed “PaintWall,” a name I’m proud of) in AR for the HoloLens. The idea is quite simple, but the implementation is not. As we learned, we’d need to implement custom shaders to allow for ink splattering, which is the core of the game. A 24-hour hackathon does not afford this kind of complicated technical work. So we pivoted to a simpler idea: multiplayer Pong for the HoloLens.

Implementation

We worked in parallel, two members trying to figure out multiplayer and myself and the last getting an MVP (Minimum Viable Product) in singleplayer. We built our game in Unity using C#. Our singleplayer MVP rendered the mesh of the surrounding area as the polygons it is represented in on the HoloLens. Within this mesh is spawned an enemy which tracks the player and shoots projectiles at them (the enemy being a stand-in for another player). The player has a paddle that moves with their gaze and can shoot projectiles by air-tapping. These projectiles bounce around the room and can knock around the enemy.

Unfortunately, we learned that the team working on the multiplayer component was using a version of the SDK that differed significantly from ours. Though they got a working multiplayer demo set up where players could view avatars of other players which move along with their position in the real world, we couldn’t implement our singleplayer game in the multiplayer one.

Conclusion

It’s always difficult to say that you didn’t end up doing all that you wanted to. But, well, that was the case at HackMIT for me. I still have a positive outlook from the hackathon: my team went in knowing effectively nothing about the technology with which we were hacking and ended up creating something rough, but with a lot of promise. Were we to do it again, we have faith that we would be able to do much more. We hope to eventually continue development when we next get our hands on the HoloLens (or if we can get the emulator working on one of our machines – that was another hurdle we faced that I didn’t mention). You can see below a video of our project.

Video of our project