I want to easily control the opacity of a whole hierarchy of objects. Is there some sort of Component or script I can add at the base of the hierarchy that would allow me to do that? Thanks.
Not really. It's a bunch of particle systems doing different things. I know it's possible to set something up that goes into the materials of each thing in the group, but it would be much easier if that could just be inherited from the root of the tree.
You could write something that gives you a similar result, but the process would be different. Like looping through all the materials and setting transparency (assuming the materials support it). Canvas is a single mesh with specific shaders. An arbitrary hierarchy of game objects would require some planning.
Oof. Okay, thanks. I'm not the programmer on the project, I'm just a Max guy (and occasional Unity guy). In Max you just set up a visibility controller for the root object and everything linked to it will follow. So I had a hard time believing it would be as involved as the project's programmer was saying.
It’s not all that involved, just requires some planning and a bit of preparation depending on your project’s needs.
@zombiegorilla could all the particles be placed on a layer to control visibility? I'm unaware if the visibility for a layer could be a variable to provide partial (.05) visibility of all objects, but if on/off is all that is needed, couldn't a Unity layer suffice for this?
For anything more than on/off I suspect that using layers would be even more convoluted, as you'd need to then also have fine control over what the camera is doing and re-compositing the layers afterwards. So, I agree that planning out how it's going to work and writing a script for it is probably the way to go.