I was inspired to make a decoder game when I saw a Reddit post showing a similar effect, but done with modern 3D glasses (the ones that use polarized plastic instead of red and blue filters).
I was mind blown, but they were using the decoder effect to show two TV shows at the same time, and I KNEW there was more to be gained by using such a technique on video games.
My journey to figure this out started with buying some colored plastic and making sure it worked. The first glasses I made were handcrafted using paper, tape, and scissors. I tried several different colors including green and yellow, but ultimately red and blue plastics worked the best….but they weren’t perfect!
A little bit of unwanted light was bleeding through the filter, but I figured I could solve the problem by either
- doubling the thickness of the filter
- turning the brightness of the game down
I opted for doubling the filter, because turning the brightness down made it too hard to see important details.
After waving the plastics in front of a colored line on my screen, and seeing it turn black, I knew that the concept worked!
Looking back at the reddit post, they overlaid the TV feeds by rapidly alternating between two different channels every frame. This shift happened so often and so fast, that if you were to black out one of the feeds you wouldn’t notice anything.
Many games run at 60fps, but 30fps is perfectly serviceable too! This meant that I could create a co-op game where both players could have their own view of the game playing. The thought of making a co-op horror game, without the split screen, was immensely enticing to me.
SO. The problems I had to solve were
- Coloring the camera.
- Switching between the cameras.
Coloring the camera was relatively straightforward, I made a shader that I applied directly to the camera and it turned everything red. Unfortunately staring through a red filter at a bright screen was hard on the eyes, making for an unpleasant viewing experience. I did research into the health risks of staring at red or blue light for too long, and while it is perfectly safe it can lead to eye strain in the short term. Even so, this was a big problem! I can’t make a game if no one can look at it for more than a few minutes!
My solution was to design an art style that maximized black space. The more black there is, the less red or blue light that would be hitting your eyes. You can turn off the lights in your room for good measure – it’ll add to the spooky atmosphere!
The final product was a style where everything was made with white outlines. White is an important color, because I can easily change it to be red or blue, increasing my light filtering options.
With this new style the screen was now bearable to look at. Now for the second problem – switching between cameras!
This was BAD. Trying to synchronize the views to line up with EVERY SINGLE FRAME was inconsistent, leading to ugly moments where the camera would black out for uncomfortable stretches. This flicker was also potentially seizure inducing, cutting down on the number of people who could play my game. While I never fully solved this problem, I did recognize a much more convoluted solution. If the game is entirely line art, then theoretically you could take the lines from both views and overlay them ontop of one another. Any pixel where a red and a blue line overlap could be made white, allowing the two views to be overlaid without using screen flickering.
With all this research and testing out of the way, I made a simple prototype that used the screen flickering. It featured a witch and a ghost who play using different perspectives: the witch is playing a first person game and the ghost is playing a top down one. They work together to capture ghosts, with the witch setting traps and the ghost luring enemies into them.
As a fun bonus, this game could be played using one keyboard and mouse. The ghost used WASD and spacebar to move, while the witch used the arrow keys and mouse.
I never finished the idea, but it taught me many valuable things that I would carry over to Halloween Hunt. It taught me how to minimize eye strain, the awesome potential of decoder glasses, and how it gave me some experience into the more technical side of game design!
