A few times now i've had to have alternative camera angles that i move between. Both ways seemed non-optimal to me so i thought i'd ask what the "right" way of doing this is. Here are the two ways i've tried this.
- Make multiple actual cameras in the scene and setup accordingly. Then at runtime enable and disable the cameras (and their sound listeners) as required.
- Pros: Able to actually preview the cameras in the editor whilst positioning them
- Cons: Fiddly runtime tasks and i get the impression this is not really what multiple cameras are for, rather for multiple simultaneous views
- Make a single camera and multiple camera "proxies" (out of empty gameobjects) in the scene. At runtime just copy the relevant camera proxy details into the main camera for snaps or lerp as required for blends.
- Pros: Intuitive, flexible and efficient at runtime
- Cons: Horrible to setup in the editor, you basically have to run the game to get the camera proxy activated to be able to test its orientation, this really slows things down!
As you can see both options have their issues. I've not tried using a combination of the two, multiple cameras but only copying the details from the other cameras as required. May be an option, i'm just concerned at whether its a performance problem to have too many cameras, especially ones that will never actually be looked through directly.
As ever, thanks for your time