-
시간 지연을 주기 위해선 InvokeRepeating을 사용하면 된다.
사용 형태는 다음과 같다.
InvokeRepeating("지연되게 할 함수", 지연 시간, 반복시간)
코드 구현
InvokeRepeating("SceneChange", 4f, 3f); public void SceneChange() { SceneManager.LoadScene("GameCookingPre"); }
만일 특정 수만큼만 지연되길 희망하면, 변수를 사용해 CancelInvoke를 해주면 된다.
사용 형태는 다음과 같다.
CancelInvoke("지연을 시켰던 함수")
코드 구현
private int count = 0; InvokeRepeating("SceneChange", 4f, 3f); public void SceneChange() { SceneManager.LoadScene("GameCookingPre"); count += 1; } public void Update() { if (count >= 1) CancelInvoke("SceneChange"); }
본인은 1번만 지연을 시키길 희망하여, count가 1 이상이면 반복을 멈추도록 설정했다.
1번보다 더 많은 반복을 원한다면, Update()에서 count가 특정 반복 이상이 되는 경우 반복을 취소하면 된다.
'프로그래밍 > Unity' 카테고리의 다른 글
[C#] GameObject[]에 Text할당하기 (0) 2022.05.18 [C#] 2D 오브젝트 색 바꾸기 (0) 2022.03.14 [C#] 타이머 제작 (0) 2022.02.28 [2D] 타일을 찍어봅시다 (0) 2022.02.20 [협업] Export 방법 (0) 2021.11.15 댓글