I have a dozen cameras in one scene and each camera has half a dozen components all with the same settings. Its taken days of testing to get the settings correct. But whenever I change one setting I have to manually select each camera and make the change on the corresponding component.
There must be a better way to do this. What would be ideal would be the ability to create a a sort of ‘prefab’ from a group of components so that if you change just 1 setting it is applied to ALL gameObjects that have that component.
Let the half a dozen of components to be the children of one camera. Attach a script which allows you to control the components to the camera. Export the camera as a prefab. Use another gameobject with a script to instantiate the camera prefabs.
I think the Unity3D’s intent is to do this with regular prefabs. Each component in a “from prefab” gameObject individually tracks that component in the prefab if it can. If you build several objects from the same prefab, with Components added/removed from the gameObjects, they keep the prefab connection, and will track the original on whatever is left.
So, and I’ve never done this, the idea would be to make all cameras from the same prefab. Either before or after doing this, add any shared Components to the prefab (if 2 out of 10 cameras need a rigidbody, add it to the prefab.) Then delete it from the Instantiated cameras that don’t need it. Prefab changes should then occur in every applicable real camera.
As usual, you’ll have to make changes while playing, write then down and re-apply them later. The only difference is you apply them to the “base” prefab.