Untitled attachment
https://media.gameliberty.club/media/media_attachments/files/114/105/577/040/736/839/original/13ccd36785dad92f.png
@LukeAlmighty @alyx True transparency, using alpha, is trivial to implement, but for high fidelity games it's a serious issue.
Besides what you already mentioned, transparent objects have to be rendered AFTER everything else has been rendered behind them.
On top of that, to prevent two transparent objects from covering each other, they must be drawn back to front, as opposed to the front rendering most engines use these days.
Front rendering is a powerful optimization that reduces over draw.
Say you drew a thing, and there's something behind it.
GPU doesn't care, it won't bother with an object if it's already being obscured, there's nothing left to draw.
With dithering, none of these issues exist, because it's still a solid object as far as the GPU is concerned.
Attached is correct and incorrect transparency overlapping.
GNU social JP is a social network, courtesy of GNU social JP管理人. It runs on GNU social, version 2.0.2-dev, available under the GNU Affero General Public License.
All GNU social JP content and data are available under the Creative Commons Attribution 3.0 license.