Screentendo, a desktop application, will turn a selection of your computer screen into a playable Super Mario Bros. level.
Aaron Randall, a software developer from London, recently showcased what his Mac app can do with Mario bouncing around a Google logo made of brick blocks.
Launching Screentendo opens a semi-transparent window which can be moved and resized. Clicking inside the window causes the app to take a screen capture, and then, Super Mario-fy it with brick blocks, clouds, and, of course, Mario.
Randall created Screentendo using Cocoa and Sprite Kit. He’s made the source code available on Github, but OSx and CocoaPods are needed to use it, which can downloaded here. This is not compatible with Windows platforms.
Randall goes into more depth about the inner workings of his unique Super Mario Bros. level generator on his blog. “There are two basic steps to Screentendo,” Randall writes, “image processing to determine the structure of the target region, and the level generation.”
Using a variety of filters, images are converted into a format that can be used to render a game level. Screen captures are simplified into a black and white image. This is then arranged into blocks which creates the array needed for the Super Mario transformation.
“This app is a proof-of-concept hack, and has a few shortcomings,” continues Randall. “Image processing is currently really, really slow – sub-blocking the image takes a long time. The current implementation also requires a reasonably distinct contrast in the underlying image for the block detection to work.”
Therefore, something like the Google logo with it’s colorful letters contrasting against a white background is ideal for Screentendo.
Randall makes further note that the physics are off. Still, it’s a blast to have Mario breaking apart the IGN logo with his head. Imagine if we could Screentendo this Mario-themed apartment?
Erich Schuler is a freelance writer for IGN in Japan. When he’s not doing plumbing in the Mushroom Kingdom or Hyrule grass cutting services, he’s tweeting on Twitter.