2016-09-05 6 views
1

(SceneManager.GetActiveScene(). name == "Game") 배너를 숨기고 싶었지만 Application.LoadLevelAsync를 사용하여 장면을로드했습니다.배너 숨기기 및 다시 호출하기?

배너를 숨기거나 표시하기로 결정하기 전에 매번 loadlevelasync의 이름을 확인하는 업데이트 기능을 만들 수 있습니까? 또는 게임이로드 될 때만 hide를 호출하고 종료 후 표시해야합니까 ??

고마워요.

답변

1

anync 장면로드를 사용하는 경우. 원하는 장면이로드 될 때 배너를 숨길 수 있습니다.

public class ExampleClass : MonoBehaviour { 
    IEnumerator Start() 
    { 
     AsyncOperation async = Application.LoadLevelAsync("MyBigLevel"); 
     yield return async; 
     Debug.Log("Loading complete"); 
     // CALL THE CODE TO HIDE THE BANNER AT THIS POINT 
    } 
} 
+0

그러면 어떻게 다시 표시해야합니까? 그 장면이 onDestroy 일 때? – whoami

+0

예를 들면 다음과 같은 여러 가지 방법이 있습니다. [SceneUnloaded] (https://docs.unity3d.com/ScriptReference/SceneManagement.SceneManager-sceneUnloaded.html) 위임. 아니면'gameObject'를 만들고 스크립트를 붙여서'OnDestroy' 나'OnDisable' 메쏘드에 배너를 보여줄 수 있습니다 –

+0

그걸 해결하면 배너를 숨기는 장면의 gameobject에 ondestroy를 호출합니다 – whoami