You might have memories of playing an old console game where, when you get right up close to the camera, an object goes transparent. There's a subtle effect that uses a dithering filter over the object instead of it having complete true transparency.
It was great to listen to Daniel Ilett cover this topic. You can find his YouTube video here he covers dithered transparency and highlights how it is used in games like Super Mario Odyssey. His blog post focuses on setting up these shaders inside Unity's Universal Render Pipeline (URP).
It's wonderful to see these tutorials available as shaders for modern game engines, BUT as an artist who just wants to share quick art and mini animations to people, I decided to research more how to achieve this effect by hand, without any coding.
After some web surfing, I was lucky to bump into posts from st0ven on Lospec, which include archived pages of his site . He's a veteran pixel artist whose style is impressive!! His website has tutorials from others, someone named Raven had this "Semi-Transparency (dither)" tutorial on spriteart.com, which was exactly what I was looking for to help me understand the manual process better!!
I have a few ideas for how this effect can be used, such as for screen transitions!! I also happened to read chipushishi's blog posting about it, which is beautiful and shows how possible it is to achieve for a visual novel. I truly miss this old-school style!!
I have kept up with their posts for a while. Sometimes they share timelapses and document their process. They are currently working on their adult PC-98 style game, 同居人 (Under one Roof), which looks incredibly good. I heard they plan to release it this year.
I've been experimenting and trying to emulate that dithered transparency manually! It's actually quite challenging because I wanted to use clipping masks, but as of 2026, Aseprite has no native clipping mask tool. If you search Aseprite tutorials on this, they just show themselves using alpha lock (GRRRR). THIS IS NOT THE SAME AT ALL. Alpha lock is destructive, and painting on the same layer.
I really hope we get true clipping masks in Aseprite in a future update, many pixel artists would appreciate this feature. Because of this, I'm seriously on the fence about picking up Resprite on Steam. The reviews look great, and it supports non-destructive clipping masks natively.
Right now, I have to constantly switch back and forth between programmes since GraphicsGale (I prefer painting in GraphicsGale~) but doesn't support clipping either.
Thanks for reading my blog post! I'm going to come back to this entry soon to update it and show you all the results of my experiments of Dithered transparency~
References and Image Credits
- Ilett, D. (2020). Dithered Transparency in Unity Shader Graph [Tutorial]. Retrieved from https://danielilett.com/2020-04-19-tut5-5-urp-dither-transparency/
- Seator, S. [st0ven]. (2006). Semi-Transparency (dither) [Tutorial]. Spriteart. Retrieved from http://web.archive.org/web/20070401215548/http://spriteart.com:80/tutorials/01_trans00.html
- chipushishi. (2022). 同居人 (Under one Roof) Devlog [Blog post]. Ci-en. Retrieved from https://ci-en.dlsite.com/creator/15038/article/1134884