This is a program I made in Processing that I've been working on since the summer of 2019. It takes two images and constructs one with the pixels of the other, while also animating a transition between them. In the YouTube video below I go over the different steps of the process in more detail. I also talk about the problems I had to solve along the way, as well as the many optimizations I made to speed it up.
My future plans for this project are to improve the performance by using fragment shaders and to add more animations. Maybe one day I'll even submit it to a platform like Wallpaper Engine so that anyone around the world can use it!
UPDATE 8/3/2020: I have once again improved the performance of the program by organizing each pixel of the starting image into a three-dimensional array, where the length corresponds to the hue, the width to the saturation, and the height to the brightness. This gives the program a massive head-start during the analysis phase. When trying to find a pixel from the first image to match one in the second image, it instantly jumps to the index in the cube where the second image's pixel would belong, then begins searching an expanding sub-cube within the original HSB cube. This guarantees that the first element it finds will be the closest possible color match, making the analysis phase almost instantaneous in the best case.

You may also like

Back to Top