코루틴이란?
코루틴(Coroutine)은 Unity에서 사용되는 특수한 함수로, 일반 함수와 달리 실행을 중단하고 나중에 다시 재개할 수 있다. 코루틴은 IEnumerator 타입을 반환하고 yield 키워드를 사용하여 실행을 중단하고 특정 조건이 충족되면 다시 실행을 재개며, 이를 통해 시간 기반 작업이나 비동기 작업을 쉽게 처리할 수 있다.
다양한 yield 유형
지정된 시간(초) 동안 대기
yield return new WaitForSeconds(3f); // 3초 동안 대기
현재 프레임의 끝까지 대기, 다음 프레임에서 코루틴이 재개된다.
yield return null;
모든 렌더링 작업이 끝날 때까지 대기한다.
yield return new WaitForEndOfFrame();
다음 물리 업데이트가 될 때까지 대기한다.
yield return new WaitForFixedUpdate();
다른 코루틴이 완료될 때까지 대기한다.
yield return StartCoroutine(OtherCoroutine());