2016-09-03 2 views
0

내 메뉴 장면에서 LoadStereo()을 트리거하는 부울 버튼이있어서 VRModeEnabled 또는 !VRModeEnabled을 허용합니다.다른 스크립트에서 사용할 스크립트에서 Unity 액세스 부울

GvrViewer MonoOrStereo = new GvrViewer(); 

void Awake() { 
    bool stereo = MonoOrStereo.VRModeEnabled; 
} 

public void LoadStereo(bool stereo) { 
    Debug.Log (stereo); 
} 

이 클릭 할 때 진실과 거짓 그래서 내 두 개의 버튼이 나에게 올바른 값을주고있다 로그인 할 것으로 보인다.

하지만이 값을로드 된 장면으로 보내는 데 문제가 있습니다. 로드 된 장면의 시작 함수에서, 나는

void Start() { 
    GameObject MonoOrStereo = GameObject.Find("MonoOrStereo"); 
    Menu menu = MonoOrStereo.GetComponent<Menu>(); 
} 

을 가지고 있지만 나는 부울 menu.stereomenu.LoadStereo()에 액세스하지 못할. 이 코드를 내 코드에서 사용할 수있는 부울로 바꾸려면 어떻게해야합니까?

+0

가능한 복제 (http://stackoverflow.com/questions/25930919/accessing-a-variable-from-another-script-c-sharp) – Serlite

답변

1

stereo이 함수에서 선언되었으므로 스크립트에서 stereo 변수에 액세스 할 수 없습니다. 함수 밖에서 선언 한 다음 Awake() 함수에서 초기화하십시오. 또한 액세스하려면 액세스를 public으로 설정해야합니다.

public GvrViewer MonoOrStereo = new GvrViewer(); 
public bool stereo; 

void Awake() { 
    stereo = MonoOrStereo.VRModeEnabled; 
} 

public void LoadStereo(bool stereo) { 
    Debug.Log (stereo); 
} 
[다른 스크립트 C#에서의 변수에 액세스]의
관련 문제