If you played a lot of games in the mid 80’s and 90’s, you might remember the iconic graphics of Sierra’s online adventure games. These were brightly colored (16 colors) and were moving with some depth. To pay tribute, [eviltrout] Image upscale work. Despite being rendered in 160×200 16 colors and then expanded, all of these bitmaps will take up all the storage available on a floppy disk, even stored at 4 bits per pixel. Game engineers have decided to replace the vector method for a raster problem.
When [eviltrout] To try to improve the backgrounds, he started writing some code to extract the draw commands from the game engine, known as Adventure Game Interpreter (AGI). Comparing the vector commands with the PNG version, equivalent to the best compression, the AGI vector versions were about half the size. Not bad for a couple of game developers in the 80’s. Since it is all vector commands under the hood, they should be relatively easy to draw in much higher resolution. At least, that’s what he thought. The first problem was with flood filling. Since the canvas is large, there are gaps between the lines and protection from flooding. Several approaches were taken, such as using a low-resolution reference and marching squares, but none were satisfactory. Finally, [eviltrout] Used stretch flood filling and dense lines. He first rendered at a lower resolution and connected neighboring lines of the same color. Finally, he uses ImageMagick to identify the white glasses on the output.
We think the effect is charming, but some may say that you are distorting the art in a way that the artist never wanted. But, like all graphical enhancements, some artistic freedom is being taken without involving the original artist. The code is available on GitHub under an MIT license. Video after the break.