본문 바로가기
Unity

2024/05/09 Unity 포켓몬 게임 구현하기 (Coroutine, Enumerator)

by 민정e 2024. 5. 9.

Coroutine함수

주로 게임에서 사용되며, 지연된 작업이나 연속적인 프로세스를 실행할 때 유용함.

코루틴은 함수 내에서 yield 키워드를 사용하여 실행을 일시 중지하고 이어서 실행할 수 있는 기능을 제공함.

WaitForSeconds, WaitForEndOfFrame, WaitForFixedUpdate 등의 유용한 기능들을 사용하여 대기하거나, yield return null을 사용하여 다음 프레임까지 대기할 수 있음.

이를 통해 게임에서 연속적인 애니메이션, 이펙트, 상호작용 등을 제어할 수 있음.

코루틴은 IEnumerator를 반환하는 메서드로 정의되며, yield 문을 사용하여 코루틴이 일시 중지되는 지점을 표시함.

Enumerator함수

주로 배열, 리스트, 딕셔너리 등과 같은 컬렉션에 순회할때 사용.

컬렉션의 각 요소에 대한 접근 및 조작이 가능.

요소를 읽기만 하는 것 뿐만아니라, 요소를 추가하거나 삭제 하는 등의 조작도 가능함.

foreach루프는 Enumerator를 내부적으로 사용한다. foreach루프를 사용할 수 없는 상황에서 직접 Enumerator를 사용하여 컬렉션을 순회할 수도 있다.