Hi Everyone!
I’m trying to switch between cameras in unity for my game, but not a usual switch -
I want them to get switched when the player is on one terrain or another (thats not the problem, I used the function
void OnTriggerEnter(Collider Other)
and used tags; the problem was to switch the cameras.
I tryed to to the next code in this function^^ but it didn’t work:
GameObject.Find("Main Camera").GetComponent("Camera").camera.enabled = false;
GameObject.Find("2D Camera").GetComponent("Camera").camera.enabled = true;
then I tryed something else - I used another code -
public Camera[] cams;
and switched the cameras when something heppend, but this time the problem was to put the cameras in the player, and I don’t understand what is wrong. can someone help me please?
1 Answer
1
Your logic worked for me. I made a fast script in 2min
public class PlayWithCameras : MonoBehaviour {
Camera _camera1;
Camera _camera2;
void Start () {
_camera1 = GameObject.FindGameObjectWithTag("Camera1").GetComponent<Camera>();
_camera2 = GameObject.FindGameObjectWithTag("Camera2").GetComponent<Camera>();
}
void Update () {
if(Input.GetKeyDown(KeyCode.T))
{
_camera1.enabled = false;
_camera2.enabled = true;
}
if(Input.GetKeyDown(KeyCode.R))
{
_camera1.enabled = true;
_camera2.enabled = false;
}
}
}
You can improve this. But it works. You could easily do it with a array. But this is how my hierachy looks like ingame
TempCameras (Just a gameObject that has the script)
I then created 2 empty gameObjects and put one camrea in each. I tagged them with Camera1 and Camera2. I put these 2 gameobjects as childobjects of the TempCameras object (But you dont have to)
Thats it. Hope this helpes you on your way.
Thanks, You are awesome! its not what I want, even not close actually, because I made something like this - but you fixed one of my codes! my code: GameObject.Find("Main Camera").GetComponent("Camera")... your code: _camera1 = GameObject.FindGameObjectWithTag("Camera1").GetComponent<Camera>(); so thank you very much! (but, if someone understood me and know what I want, can you help me too, so it will be easyer to me in the game?)
– sonic_loverConverted answer to comment.
– Julien-LyngeI'm sorry, I thought it would be good, but the code didn't work for me. can someone else help me?
– sonic_loverConverted answer to comment again. Please use the comment button for comments, and the answer button for answers, or you will be downvoted and lose karma.
– Julien-LyngeI have tested my code and it works fine. If you could be more precise in what you are trying to achive. Maybe i could help you out.
– Brahim113