- Today
- Total
Notice
Recent Posts
Recent Comments
Link
250x250
프로그래밍 농장
코루틴(coroutine) 이란? [ Unity ] 본문
728x90
> 문제
생성 직후부터 서서히 나타났다가 서서히 없어지는 오브젝트를 만들고자 할떄 어떻게 구현할것인가?
> 해결방법
Update 함수를 사용하여 매 프레임에 걸쳐 적의 SpriteRenderer를 통해서 알파값을 조정해주는 방식으로 구현할수있다.
-> 위의 방법을 사용할 경우 매프레임마다 구현된 함수를 호출해야하므로 시스템 과부하를 초래할 수 있다.
위의 방법은 여러가지 함수를 통하여 오브젝트의 생성에 대한 주기도 설정해주어야하는등, 여러가지 복잡한 구조의 코딩이 요구될것이다.
이때 사용가능한 것이 바로 코루틴(coroutine)이다.
- 코루틴 (coroutine)
유니티 메뉴얼상의 코루틴은 "실행을 중지하여 Unity에게 제어권을 돌려주고, 계속할 떄에는 다음 프레임에서 중지한 곳부터 실행을 계속할 수 있는 기능이다" 라고 설명하고있다.
Update -> Coroutine -> Update -> Coroutine 의 반복인것이다.
코루틴은 단일 스레드로 동작하는 유니티를 멀티 스레드처럼 보이게 해주는 기술이다. 위처럼 코루틴은 Update과정에서 코루틴으로 통제권이 넘어갔다가 다시 Update로 돌아오는 형태를 보인다.
728x90
'Unity' 카테고리의 다른 글
Monobehavior / Awake()와 OnEnable(), Start(), Update() [ Unity ] (0) | 2022.07.04 |
---|---|
Scene 조작 및 각 창에 대한 설명 [ Unity ] (0) | 2022.07.04 |
Metamask 연동하기 (Chainsafe SDK) [ Unity ] (0) | 2022.03.19 |
Unity ML-Agents 2.0 Parameter description [ Unity ] (0) | 2022.02.28 |
ML-Agents 학습 알고리즘 이론 [ Unity ] (0) | 2022.02.25 |