Hey,
I’m working on a stealth mechanic in a top-down multiplayer game and I’m wondering how I should to tackle full character translucency. Basically when I hit the stealth button I need the instigators character to appear ~30% opaque to all players who are friendly and gradually fade out and become completely invisible to enemies. Similar to how stealth works in World of Warcraft/Blizzard style games.
As far as I’m aware here are my options and issues I’ve encountered with each of them:
-
Character shaders are Translucent - The obvious choice at first glance, but I’m experiencing render order issues when the character is fully opaque. (No, my normals are not flipped)

This is also the most expensive way to do it If I’m not mistaken.
-
Character shaders are Masked and achieve transparancy through dithering - A cheap way of doing it, but since my character is so far away from the camera the screendoor effect becomes very noticable (not so much on still pictures). Which can be cool in some cases, but not really what I’m going for this time. (Unless there is some way to increase the density?)
-
Custom depth and post processing materials
This way is relatively cheap and somewhat achieves the look I’m going for, but its not actually transparent and there is sometimes an outline to the character. And to achieve this effect for each character in the game seperately, they would need to have their own post processing layer specifically for them? Seems a bit cumbersome
What are peoples experiences with this? Am I missing something? How would you achieve the effect in the example pictures? Appreciate any input!







