2016-11-14 4 views
1

의 씬 매니저와 loadlevel를 통해 장면 변수로/얻을로드하는 방법/때문에 unity3d programitically

Application.LoadLevel(level); 

, 내가 /로드하는 데 사용할 문자열 같은 간단한 매개 변수를 가져 오는 방법을 요구하고 SceneManager이 제안되지 않는 새로운 입력 라이프 사이클의 어떤 기능으로 단순화하는 최선의 방법 (예 : Start, Awake)

SceneManager.LoadScene("resultScene", chosenOptions); 

참고가 될 것입니다 : 새로운 클래스 such as를 작성 이외의 옵션이있다?

+0

좋은 접근 방식을 보인다. 다른 모든 방법으로는 정적 클래스 (기본적으로 게임 객체를 파괴하지 않는 것과 동일한 것)를 만드는 것이 포함됩니다. – manelizzard

답변

5

Unity의 모든 기능이 기본 모바일 응용 프로그램과 다르게 작동합니다. 로드하는 동안 다음 장면에서 사용하기 위해 매개 변수를 전달할 필요가 없습니다. 첫 번째 장면에서 빈 오브젝트에 스크립트를 추가하고 그 안에 DontDestroyOnLoad이 있고이 스크립트에 값을 저장하십시오. 이 객체는 게임 라이프 사이클을 통해 유지되므로이 스크립트에 값을 저장할 수 있습니다. 새로운 장면을로드하기 전에 업데이트하십시오. 새로운 장면 등을 시작할 때 사용하십시오.

callback execution order을보고 필요에 맞는 방법을 선택할 수 있습니다. UMAIR-m @ 사전로드 된 장면에 대한

Read more/객체