While Apple and Nintendo are yet to build a strong relation for content promotion, a Canadian developer has managed to bring the two worlds together – right on his Apple Watch. The developer has built an open source emulator that can run a large number of retro games directly on your wrist.
Toronto-based Gabriel O’Flaherty-Chan has utilised his Apple Watch Series 2 to develop a whole new open source gaming platform. Named after villain character of Pokemon Yellow game “Giovanni”, the emulator is designed to enable a Game Boy-alike experience on the Apple Watch’s screen.
O’Flaherty-Chan had previously brought a 3D RPG game to Apple Watch. But he wanted to port a catalogue, instead of just one game. Therefore, the latest emulator emerged.
“Since getting an Apple Watch last fall, I have been disappointed by the lack of content,” writes O’Flaherty-Chan in a blog post. “To help address this, I made my own game a few months ago, but obviously it still did not address the bigger issue. An idea I had was to port an existing catalogue and emulator made perfect sense.”
‘Right balance’ between framerate and performance
The major challenge that the iOS developer faced during the process of building the Game Boy emulator is to work on the “right balance” between framerate and performance. Also, the lack of OpenGL or Metal support on Apple’s watchOS made it difficult to deliver a gameplay similar to Game Boy.
However, O’Flaherty-Chan took inspiration from the Facebook team that deployed Doom on watchOS. He created a Swift Playground to build images from a pixel buffer. “I realised I did not know enough about feeding pixel data into a Core Graphics Context, so I created a Swift Playground to play around with creating images from a pixel buffer,” he reveals.
Apart from utilising the small screen on the Apple Watch, O’Flaherty-Chan leveraged the available digital crown to enable navigation on the emulator. This has brought the interaction even “better than a hardware D-pad”.
The developer presumes that Apple might officially allow high-end graphics experience on the Watch by announcing Metal support for watchOS at the next WWDC. In the meantime, you can access the GitHub repository to play with “Giovanni” and refresh your smartwatch experience.