카테고리 없음

대장간에서 코루틴 사용 / 면접질문 : Unity 생명주기(Unity Life Cycle)에 대해서 설명해주세요.

이더23 2024. 12. 26. 22:02

대장간에서 강화를 했을때 강화에 성공하면 성공팝업을 띄어줄려고 하는데 이때 2초동안만 팝업창을 띄우고 그다음에는 자동으로 팝업창을 닫게끔 만들려고 코드를 작성했다.

코드

private IEnumerator WaitTime()
{
    closeButton.gameObject.SetActive(true);
    yield return new WaitForSeconds(2f);
    failure.SetActive(false);
    success.SetActive(false);
    Hide();
    UIManager.Instance.Hide<Smithy>();
    UIManager.Instance.Show<Smithy>().Initialize(_item);
}

위와같이 작성하면 팝업창이 2초동안 켜지고 그다음에 꺼지는 코드가 작성이 된다.

 

면접 질문 : Unity 생명주기(Unity Life Cycle)에 대해서 설명해주세요.

- 유니티 자체에서 호출되는 함수들이 있는데 그 함수의 호출 주기를 생명주기라고 한다. Awake 는 프리팹이 인스턴스화 된 직후에 호출되지만 해당 오브젝트가 비활성화인 경우 활성화 될때까지 호출되지 않는다. Start는 인스턴스가 활성화 된 경우에만 첫프레임 전에 호출된다.  FixedUpdate, OnTrigger, OnCollision은 물리 계산하는 함수이다. 그리고 Update와 LateUpdate는 매 프레임 마다 실행이 되는데 LateUpdate는 Update가 끝나야지 실행이 된다. 그리고 객체가 삭제되기 직전에 OnDestroy가 실행이 된다.