willem.com

Game on Willem's Blog

Realtime human pose recognition through computer vision

Using TensorFlow and PoseNet on a video feed

Dec. 1, 2019
For an exciting new project I have been experimenting with TensorFlow, enabling realtime pose detection using PoseNet.

For an exciting new project I have been experimenting with computer vision using TensorFlow. I wanted to achieve realtime human pose detection to drive interactive video projections and games. Time to dive into the world of machine learning, tensors and computer vision!

Updating Snake '97

About the challenges of developing a wildly popular game

Feb. 21, 2018
This month I bit the bullet big time: I redesigned the game engine of the wildly popular Snake '97 game. Read about the design challenges in this blog post.

Few years ago my brother threw a beer on my iPhone in an Amsterdam bar. The poor thing didn't like the Dutch brew as much as I do: it died. While waiting for a new phone to arrive, I used an old one that couldn't do anything but texting, calling and... Snake! The idea for Snake '97 was born and this month it was time to update the wildly popular game.

Repairing a Nintendo Gameboy Advance SP

Chip surgery to play classic Zelda

Mar. 26, 2017
Reparing an old Nintendo Gameboy Advance to play classic Zelda again.

This month Nintendo released the Switch with Zelda "Breath of the Wild". The new console received positive reviews. The new Zelda game is amazing and can be played on-the-go, thanks to the portability of the Nintendo Switch. But it its hardly the first Nintendo device that features the mythical kingdom of Hyrule with Link and princess Zelda. I found an old Gameboy Advance, perfect for playing classic Zelda games... but it was in need for repair!

All blog posts
The new Zelda game
The new Zelda game "Breath of the Wild" sets the new benchmark for open world games according to the popular blog The Verge. It looks amazing!
Same 3310? Look closely and spot the differences between iPhone SE and iPhone X
Same 3310? Look closely and spot the differences between iPhone SE and iPhone X
Analysing gameplay speed differences using slow motion video
Analysing gameplay speed differences using slow motion video
UX-design for an international audience. Designing interfaces without words is difficult!
UX-design for an international audience. Designing interfaces without words is difficult!
Café 't Pakhuis in Amsterdam - where Snake '97 was
Café 't Pakhuis in Amsterdam - where Snake '97 was "invented"
iPhone 4 - ahhh sweet developer memories when one (small) size did fit all...
iPhone 4 - ahhh sweet developer memories when one (small) size did fit all...
Snake '97 running on iPhone X - looking and feeling like the retro mobile phone game from the 90s
Snake '97 running on iPhone X - looking and feeling like the retro mobile phone game from the 90s
Prototype of Snake '97 running on various devices
Prototype of Snake '97 running on various devices
MobileNet-SSD algorithm (image: hey-yahei.cn)
MobileNet-SSD algorithm (image: hey-yahei.cn)
Turning people into birds using computer vision
Turning people into birds using computer vision
Clever hardware design: each button fits exactly on one position and orientation only!
Clever hardware design: each button fits exactly on one position and orientation only!
Zelda
Zelda "Link's awakening" from 1993 on the repaired Gameboy Advance SP
The Gameboy Advance SP from the inside
The Gameboy Advance SP from the inside
A trick the original Snake couldn't: controlling the game using a Bluetooth DualShock PlayStation controller with an analog thumbstick
A trick the original Snake couldn't: controlling the game using a Bluetooth DualShock PlayStation controller with an analog thumbstick
On the left: an original screenshot from
On the left: an original screenshot from "Link's Awakening" (1993). On to the right: how fans perceive the magic. (Fan art created by "einen" from http://einen.deviantart.com)
The buttons can be removed easily to be cleaned
The buttons can be removed easily to be cleaned
Me and mini-me being recognised by the PoseNet model
Me and mini-me being recognised by the PoseNet model
Spot the differences: the original faulty logic board above and the replacement on the bottom
Spot the differences: the original faulty logic board above and the replacement on the bottom

More Game on Willem's Blog

All blog posts