About this project

It all started with a small Photoshop request for our competitive Discord channel. One of our teammates (Loliger3000) asked me if I could help "design" a logo for said channel.
I had the idea to fuse all champions of our 4 premades into one, creating this monstrosity:

To share my creation with the world I posted it on the /r/Overwatch. Against any of my expectations it soon reached the "popular" page of /r/Overwatch and soon after even the 8th place on /r/all.
On the same day I thought about the effort it took to create said logo. Being a developer myself I thought about the possibility to automate the whole process. What if I could let people select parts of their favorite Overwatch characters and create such mythical beasts automatically? A big inspiration was the - Pokemon Fusion website by Alex Onsager.

The approach

While trying to find all pixel sprays of all Overwatch heroes in the highest quality possible I realized, that some of them were either converted or compressed multiple times already, lowering the quality and destroying the pixel art aspect of limited colors.
Unfortunately, even after getting my hands on the extracted pixel sprays directly from the game files, I realized a huge difference in quality on some of the pixel sprays.
Sombra was one of the worst (as you can see in the picture). Blurry lines, mixed colors in one pixel etc etc.

The next step was to create a small subset of Heads, Torsos and Legs to create a proof of concept. I chose the easiest 5 (Bastion, Ana, Orisa, Sombra and Doomfist) and split them into their respective parts via Photoshop. After having done all the splitting, I had to think about realigning the respective parts of different heroes. I chose to manually write down anchor point coordinates for every head. To reattach them to any torso I also wrote down anchor coordinates for the head on the torso to be able to align both anchor points, thus aligning any head with any torso. The same thing I did for the legs: Anchor point on the legs and anchor point for the legs on the torso. (See red X in the picture)