FOV Change With GUI

Hey I’m bad with GUI so could someone help me out, I need a script where you could press M and a GUI menu would open. You would have 3 options 70FOV 80FOV and 90FOV then to close it press M again. As I said I’m not good with GUI but I would still like you to explain what everything in the script is and what it does if that’s not to much to ask. Help me get a better idea of how GUI works. Thanks -jimmyismike

Im not the best at GUI so someone will probably come up with a better way to do it lol.


var GUIon:boolean;

function Update(){

//Checks to see if you’ve pressed the M key and if GUIon = true or false. if it’s false it opens the GUI and turns it off if it’s on(this is needed because otherwise the gui is open all the time)

if(Input.GetButtonDown(“M”) && !GUIon){

GUIon = true;

}else if(Input.GetButtonDown(“M”) && GUIon){

GUIon = false;



//Shows everything when GUIon = true;

function OnGUI(){


GUI.Box (Rect (X pos,Y pos,X size,Y size), “FOV”);

if (GUI.Button (Rect (X pos,Y pos,X size,Y size), “FOV = 70”)) {

 camera.fieldOfView = 70;


if (GUI.Button (Rect (X pos,Y pos,X size,Y size), “FOV = 80”)) {

 camera.fieldOfView = 80; 


if (GUI.Button (Rect (X pos,Y pos,X size,Y size), “FOV = 90”)) {

 camera.fieldOfView = 90; 




This requires you to change some things to fit your project but should work otherwise