Dithering Makes Everything Cooler: Now Even Animated

[dukope] was writing a game, Return of the Obra Dinn, with a fantastic visual style. One of the choices was to make everything in glorious one-bit color, otherwise known as black and white, and then dither it back to monochrome. You know, like they used to do on the Mac Plus.

If dithering is your aesthetic, then it makes a ton of sense to take it seriously. And it’s absolutely beautiful – check out the video below.

But what’s even more amazing is [dukope]’s attention to detail on the dithering. For instance, this post on the TIG forums details the problems and solutions when you have a dithered image that needs to also be animated. You want the dots to stay relatively constant on the object as the virtual camera pans across the scene, and that’s going to necessitate a custom algorithm. And if you think that’s cool, have a look at how the book at the center of the game is animated.

What can we say. We loved dithering before, but this post has made our love even deeper.

Thanks [JohnU] for the tip!

36 thoughts on “Dithering Makes Everything Cooler: Now Even Animated

      1. You can see the aliasing (“jaggies”/”staircase”) right in the beginning when zooming in on the skeleton (look at the mast shadow).

        There’s Moire (add the accent yourself) too in a few scenes (and in some sense the ‘ripples’ on the aliasing artifacts are due to the camera movement being misaligned with the aliasing artifacts).

        It’s an interesting effect, but I don’t think I could play a game like that – the video alone gives me a headache and a bit of nausea.

          1. Not everybody had the good fortune to be raised in the times were you moslty only got to set up your low res 8 bit on the spare flickery black and white telly. Some of the kids now claim they get cancer just from seeing a frame rate drop below 60fps. RIP.

        1. If you read the forum post, this was intentional – that’s what most of the work was done to do. The pixels changing was called “swimming dither.” I don’t actually agree with fixing it either, but figuring out how to do it is interesting.

          1. I think what I was expecting was something more like halftoned newspaper comics, cut out and sliding across each other like cel-overlay animation. So the halftoning would be fixed to the object and the dots would move with it, even rotate with it.

    1. I’m waiting for the hatching / woodcut/ engraving shader to be invented. Then it will be art. The Bayer dithering just sucks in my opinion, but it’s the most notoriously “retro” scheme so there you have it I guess.

    2. In actual gameplay it doesn’t really cause a problem. It looks a lot more blatant in the video, presumably because movements are slow and at constant speed, highlighting the temporal aliasing.

  1. “One of the choices was to make everything in glorious one-bit color, otherwise known as black and white, and then dither it back to monochrome.”

    That doesn’t sound right. Dithering goes from more information to less, not the other way around.

          1. 2018 is going out of range, old Sol is barrelling along at 220km/sec and the furthest we’ve managed to get an object is Voyager 1, which is a distance equivalent to 1280 Sun travel days away and it took since 1977 to get there. If we launch now, and in the right direction (Voyager went out, we wanna go “down”) we might be able to get you to 2067 in 2070.

  2. This seems possibly foundational, like that lecture from Arc System Works on how they manage to make 3d models look like they’re hand drawn or have textures of infinite resolution by a bunch of easy tricks.

  3. That’s a pretty fascinating technical post. I had no idea it was so complicated, it worked extremely well in-game.

    The weirdness of objects moving but individual pixels in the dithering staying still would have made the game unplayable for me. I’m glad they found a solution.

  4. It’s fun to see the “cloud” of artifacts. Also looks like the silkscreen artifact from old newspaper pictures turned into video.
    There is a free app on Android that’s a fun way to see reality in a different way. No ads, it’s called Wire Goggles, it looks something like this live.

  5. I would love to see it on an a normal black/white TV via antenna input (RF).

    Hm. If the game’s resolution could be set to 640×480 or 800×600, an ordinary VGA-Composite converter box could be used to get CVBS. Then, an UHF modulator can be used to convert it to RF, for reception on the b/w TV set. Optionally, a video low pass can be used to remove NTSC or PAL information.

    With a connection lossy enough, that way, the dithering effects should smear into grayscale again.

  6. I was actually not 100% satisfied with the dithering. It probably was much worse before. But in the trailer at 0:30, it looks like the body is transparent and the dithering pattern is much further away behind the body. The entire floor is similar, but on the body it is extra distracting.

    I wonder if you had textures with dithering patterns on the objects, if that would result in a more stable dithering? Would probably need a lot of anisotropic filtering to look good and hand crafted Mip Maps.

    Also the aliasing on deck looks really bad IMO. Sure having gray anti aliased pixels would be weird. But I think it might have looked better

    1. Do you have any animated examples of this? I’m curious what this looks like – I assume the dither pattern has to change completely with each frame, in order to temporally average (say, around 6 to 12 frames?) into a higher bit depth. I imagine it looking noisy in motion.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.