This is probably a stupid question but I have 4 cameras in my zone and I wish for when you click on a 3d text to switch to the next camera. i.e- "New character->choose race->choose sex, ect". I am new to scripting and I am using Javascript. I need alittle help, pls and ty.
Apply the script to each 3d text and make sure to assign a box collider to each 3d text.
var cam1:GameObject; //Assign Camera 1
var cam2:GameObject; //Assign Camera 2
var cam3:GameObject; //Assign Camera 3
var cam4:GameObject; //Assign Camera 4
var textIndex:int = 0; // **Change this value** to 1 for the first 3d Text, to 2 for second 3d Text,and ...
function OnMouseDown () {
switch (textIndex) {
case 1:
cam2.camera.cullingMask = 0;
cam2.camera.clearFlags = CameraClearFlags.Nothing;
cam2.GetComponent(AudioListener).enabled = false;
cam3.camera.cullingMask = 0;
cam3.camera.clearFlags = CameraClearFlags.Nothing;
cam3.GetComponent(AudioListener).enabled = false;
cam4.camera.cullingMask = 0;
cam4.camera.clearFlags = CameraClearFlags.Nothing;
cam4.GetComponent(AudioListener).enabled = false;
cam1.camera.cullingMask = ~0;
cam1.camera.clearFlags = CameraClearFlags.Skybox;
cam1.GetComponent(AudioListener).enabled = true;
break;
case 2:
cam1.camera.cullingMask = 0;
cam1.camera.clearFlags = CameraClearFlags.Nothing;
cam1.GetComponent(AudioListener).enabled = false;
cam3.camera.cullingMask = 0;
cam3.camera.clearFlags = CameraClearFlags.Nothing;
cam3.GetComponent(AudioListener).enabled = false;
cam4.camera.cullingMask = 0;
cam4.camera.clearFlags = CameraClearFlags.Nothing;
cam4.GetComponent(AudioListener).enabled = false;
cam2.camera.cullingMask = ~0;
cam2.camera.clearFlags = CameraClearFlags.Skybox;
cam2.GetComponent(AudioListener).enabled = true;
break;
case 3:
cam1.camera.cullingMask = 0;
cam1.camera.clearFlags = CameraClearFlags.Nothing;
cam1.GetComponent(AudioListener).enabled = false;
cam2.camera.cullingMask = 0;
cam2.camera.clearFlags = CameraClearFlags.Nothing;
cam2.GetComponent(AudioListener).enabled = false;
cam4.camera.cullingMask = 0;
cam4.camera.clearFlags = CameraClearFlags.Nothing;
cam4.GetComponent(AudioListener).enabled = false;
cam3.camera.cullingMask = ~0;
cam3.camera.clearFlags = CameraClearFlags.Skybox;
cam3.GetComponent(AudioListener).enabled = true;
break;
case 4:
cam1.camera.cullingMask = 0;
cam1.camera.clearFlags = CameraClearFlags.Nothing;
cam1.GetComponent(AudioListener).enabled = false;
cam2.camera.cullingMask = 0;
cam2.camera.clearFlags = CameraClearFlags.Nothing;
cam2.GetComponent(AudioListener).enabled = false;
cam3.camera.cullingMask = 0;
cam3.camera.clearFlags = CameraClearFlags.Nothing;
cam3.GetComponent(AudioListener).enabled = false;
cam4.camera.cullingMask = ~0;
cam4.camera.clearFlags = CameraClearFlags.Skybox;
cam4.GetComponent(AudioListener).enabled = true;
break;
}
}
make sure to have one audio listener all the time. each camera comes with one audio listener so you'll have 4 in your scene and unity doesn't like it;)