The HyperGap menu
A custom game controller
A game with the phone controls
The source of inspiration for this platform has been my experience participating in the Games competition of the Imagine Cup, where I learned to appreciate the benefits of using a layered design for videogame engine development.
What it does
HyperGap is a platform that allows game developers to target all the devices in the Universal Windows Platform using web technologies (JS/HTML5), without needing to know the Windows 10 API.
Videogames can be developed to run on Clockwork.js, a lightweight JS game engine, and packaged as HyperGap apps. This engine already includes collision detection, input processing, 2D rendering, lighting, sound... and is integrated with the UWP APIs (roaming storage, notifications, camera...), so devs can easily offer a tailored experience for W10 users.
The most important feature of HyperGap is that it allows users to use their phone/tablet as a game controller, powering new dual-screen experiences and allowing an unlimited number of users to play simultaneously.
How I built it
The HyperGap and HyperGap controller apps have been developed using Visual Studio, while the sample games have just been written in Visual Studio Code, and the packaged and deployed to HyperGap for debugging.
Challenges I ran into
Achieving seamless communication between devices was the biggest challenge, since I had to consider and experiment with multiple technologies (TCP/UDP/WebSockets/Bluetooth).
(Lack of sleep was also a big problem, but everything can be accomplished when you have the Power of Pizza™ on your side.)
Accomplishments that I'm proud of
The "menu mirroring" feature is the coolest part IMO, it allows the user to just scroll on their mobile device and select the desired menu item, instead of having to use a clunky "game controller/tv remote like" UI.
What I learned
I acquired more knowledge about different types of device-to-device communication, while I had to learn to design my own protocol and platform API.
What's next for HyperGap
A cloud-hosted marketplace where HyperGap devs were able to upload their projects, to simplify the discovery and installation experience.
Special thanks to Silvia Barbero for letting me use her artwork in the game examples