You see, as a developer it is currently difficult to prevent overlapping transparency without unioning or using Glass.
I wish to be able to toggle, or maybe even as the default, the ability for translucent objects to occlude other translucent objects. Why? Transparency has been previously stated to inhibit optimizations and slow down the renderer (See the “Transparency” section here). Having multiple transparent objects rendering behind each other is usually not an intended behavior (see Figure A), but it also can make performance take a slight hit.
I desire for the behavior with this toggle, or however it is implemented, to resemble Figure B. Now, why not use Glass or unions?
Glass has had this kind of behavior since its implementation, however, it has been stated by the Roblox team that this is not an intended use of Glass, and may be patched out in the future. Not only this, but Glass is material first and foremost, and changes how light interacts with it, including color and distortion. If I want a translucent part with the Slate material, there is no way to prevent what happens in Figure A.
Unions do solve this issue, however I came across it as a result of locally changing transparency to allow players to see their character (with a custom camera system). It is nonoptimal to use runtime CSG on things, on the client, simply for the camera. It also could easily cause bugs, as the system is still not 100% stable.
Figures
Figure A
Figure B
I hope I’ve made the case to you as to why we need the ability to toggle translucent part occlusion on translucent objects.