인프런 커뮤니티 질문&답변

Bmo님의 프로필 이미지
Bmo

작성한 질문수

따라하면서 배우는 고박사의 유니티 하이퍼캐주얼게임 시리즈 01

게임 설정

ZIGZAG강의중 Start를 Coroutine으로 사용하는 이유가 무엇인가요?

작성

·

147

·

수정됨

0

안녕하세요! ZIGZAG 강의를 보던 중 GameController 스크립트와 PlayerController 스크립트에서 IEnumerator로 Start 함수를 사용하는 데, 일반적인 void가 아닌 IEnumerator로 선언하기에 사용하는 이유가 무엇인지 궁금해 질문을 남깁니다.

해당 스크립트들에서 Start를 Coroutine으로 선언하는 특별한 이유가 있을까요??

답변 1

0

고박사님의 프로필 이미지
고박사
지식공유자

안녕하세요.

유니티에서 Start() 메소드는 IEnumerator를 반환 값으로 사용해 코루틴으로 호출할 수 있도록 제공합니다.

아래 두 코드는 완전히 동일한 실행을 하기 때문에

만약 여러번 호출되기 때문에 BeforeGameStart()와 같이 메소드를 만들어야 하는게 아니라면

Start()에서 코루틴으로 처리해도 무관하기 때문에 영상에서는 Start를 코루틴으로 처리했습니다.

 

private void Start()

{

StartCoroutine("BeforeGameStart");
}

private IEnumerator BeforeGameStart()

{

// 마우스 왼쪽 버튼 클릭하면 게임 시작 처리
}

 

private IEnumerator Start()

{

// 마우스 왼쪽 버튼 클릭하면 게임 시작 처리
}

 

Bmo님의 프로필 이미지
Bmo

작성한 질문수

질문하기