- Home /
Switch to second camera which has all the GUI
At this point I can only switch GUI on or off for all cameras. How would I switch certain "GUI.BeginGroup"'s on or off depending on whether I am using, in my case: 'Main Camera' and 'Gun Camera'?
Like so:
var camera1 : Camera; var camera2 : Camera;
function OnTriggerEnter(whatObject:Collider) { if(whatObject.gameObject.tag == "Player") {
//~ Application.LoadLevel("invent"); camera1.camera.enabled = false;
camera2.camera.enabled = true;
} }
Thx in advance
What I tried, but is not working at this stage is:
var camera1 : Camera; var camera2 : Camera;
function OnTriggerEnter(whatObject:Collider) { if(whatObject.gameObject.tag == "Player") {
//~ Application.LoadLevel("invent"); camera1.camera.enabled = false;
camera2.camera.enabled = true;
} }
Answer by Maarten · Nov 24, 2010 at 10:10 AM
You could just program scripts which draw the GUI on the screen. For example, just make each Group a function. Then in your OnGUI of the camera, call the correct method.
createGunGUI() { // Your code here renderGroupOne(); renderGroupTwo(); }
renderGroupOne() { }
renderGroupTwo() { }
Answer by Steven Brewis · Nov 24, 2010 at 11:39 AM
Actually the script above works, if anyone wants to use it. My problem was an influence from another camera, here it is again:
var camera1 : Camera; var camera2 : Camera;
function OnTriggerEnter(whatObject:Collider) { if(whatObject.gameObject.tag == "Player") {
//~ Application.LoadLevel("invent"); camera1.enabled = false;
camera2.enabled = true;
} }
Answer by PrimeDerektive · Jan 05, 2011 at 04:48 PM
I would just say inside your OnGUI function say:
function OnGUI(){
if(camera1.camera.enabled = true){
//Do GUI stuff that you only want to show on camera1 here
}
}